Skip to content

l00kuss/sipgate.io

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 

Repository files navigation

sipgate.io

This README documents the sipgate.io functionality. A demo page can be found here.

Requirements

The POST request

sipgate.io sends a simple POST request with an application/x-www-form-urlencoded payload. The request contains the following parameters:

Parameter Description
from The calling number (e.g. "492111234567" or "anonymous")
to The called number (e.g. "4915791234567")

That's all!

You can simulate this POST request and test your server with a simple cURL command:

curl -X POST --data "from=492111234567&to=4915791234567" http://localhost:3000

The XML response

After sending the POST request sipgate.io will accept an XML response to determine what to do. Make sure to set application/xml in the Content-Type header of your response and you are ready to go!

sipgate.io currently supports the following responses:

Action Description
Reject Reject call or pretend to be busy

Reject

Pretend to be busy or block unwanted calls.

Possible attributes Possible values Default value
reason rejected, busy rejected

Example 1: Reject call

<?xml version="1.0" encoding="UTF-8"?>
<Response>
        <Reject />
</Response>

Example 2: Reject call signaling busy

<?xml version="1.0" encoding="UTF-8"?>
<Response>
        <Reject reason="busy" />
</Response>

More to come

Stay tuned...

Server Examples

We compiled a collection of server examples to get you started:

Troubleshooting

sipgate.io Log

You can enable logging for debugging purposes from your simquadrat dashboard. You will find each request and the corresponding response in the logging table.

How do I inspect network traffic?

You can use ngrep to inspect the incoming requests on your side:

sudo ngrep -dany -Wbyline port 3000

A word about security

HTTP vs. HTTPS

We strongly encourage you to use a HTTPS server. Although we support plain HTTP connections we do not recommend pushing sensitive call details over unencrypted connections. By default sipgate.io does not accept self-signed certificates, but you can allow them in the simquadrat dashboard.

Authentication

sipgate.io supports HTTP Basic Authentication. You can include your username and password within the URL (e.g. https://username:[email protected]:8080).

Help us make it better

Please tell us how we can improve sipgate.io. If you have a specific feature request, found a bug or would like to add an example, please use GitHub Issues or fork these docs and send a pull request with your improvements.

About

sipgate.io Documentation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published