Here you can learn about how to process inbound and outbound SIP calls.
How to call a 3rd-party PBX
In the scenario, use the callSIP method to call a SIP address. Take a look at the scenario example to understand how it works.
Voximplant uses UDP as the default protocol for SIP calls. If you want to use the TCP protocol, specify it in the callSIP method as shown below in the code example
To enable TLS support for your SIP calls, change the
sip: prefix of your address to the
sips: prefix or simply specify the TLS transport type. See the code example:
If you want to make sip calls from web or mobile SDKs, specify the SIP address in the first parameter of the call() method in your application. You can retreive this value in the
e.destination property in your scenario.
How to receive calls from a 3rd-party PBX
To receive calls in a Voximplant application, you need to whitelist your PBX domain's IP address in the control panel.
Whitelist the IP address, not the domain name. For example, if your 3rd party PBX is Linphone, whitelist 18.104.22.168 instead of sip.linphone.org
After that, you can call your Voximplant application from the whitelisted PBX via one of the following address formats:
After you start a call in your SIP PBX, you receive this call in the specified application. Create a proper routing rule to match the destination field of the address.
The destination field of the address is processed by your scenario and can be retrieved the e.destination property of the incoming call object.
You can pass a username to this field if you want to call a specific user, or you can pass any string value to this field, retreive it from the e.destination property, and process in your scenario logic further.
You cannot accept incoming SIP-calls from the voximplant.com domain. Learn how to call a Voximplant user via the platform.
How to use 3rd party SIP software with Voximplant
Then open your 3rd party SIP software and add a new SIP account. Use your user as account username, and the domain part of your application as SIP domain.
You can specify UDP/TCP transport, or specify TLS transport to secure your connection.
After you sign in, you can make audio and video calls from your 3rd party SIP application.
How to work with SIP registrations
SIP registration is a feature that allows Voximplant to behave like a third party PBX softphone. This allows you to forward calls from your PBX to Voximplant easily without performing complicated trunk configuration.
Create a SIP registration
During creation, you need to specify at least the following parameters:
proxy – your provider's SIP proxy address. You can add a port number if it is different from the standard 5060 port, e.g. sip.provider.org. By default, Voximplant uses the UDP transport. If you need to use TCP, just add ;transport=tcp to the proxy address. So in the most complicated case, this field contains something like sip.provider.org:5090;transport=tcp
username – the user name, e.g. user12302
password – the password that was given to you by your provider
Also, some providers require to specify outbound proxy and auth user parameters, but most of the providers do not need that.
Please note that you pay for SIP registrations monthly according to our price list. So if you create a SIP registration and delete it immediately, your account is charged for the SIP registration monthly fee.
SIP registration statuses
In the control panel, you can see the status of each registration. There are currently 3 possible statuses:
- Successful – the registration was performed successfully
- In progress – Voximplant is about to initiate the registration that has been recently created or modified. Usually, the provisioning process takes up to 2 minutes
- Failed – Voximplant attempted to perform SIP registration but it was not successful. Usually, it is a result of some SIP error returned by the SIP proxy. You can obtain the status code and message in the information tooltip in the control panel.
When a SIP registration status changes from Successful to Failed and vice versa, you get a email notification to the contact email addresses and the HTTP callback invokes. You can learn more about HTTP callbacks in this article.
How to make calls with SIP registration
To make a call with a SIP registration you need to pass the regId parameter to the VoxEngine.callSIP function. You can find the registration id in the SIP registration list in the control panel, or in the GetSipRegistrations and CreateSipRegistration functions' response. Usually, you need to specify only the username/number of the called party.
Configure a SIP registration
To process inbound calls to Voximplant, you need to attach a SIP registration to an application (in the SIP Registrations section of an application menu) and select the desired routing rule that handles the calls. Please note that you do not need to configure the rule pattern in this case — the rule works for all the calls to this SIP registration.