Connections are a fundamental component of SIPERB, acting as the link between your PBX or ISP and your SIPERB account.
As outlined below, SIPERB functions as a SIP proxy, facilitating the passage of SIP messages between your in-office or cloud-provided PBX. Although SIPERB automatically provisions the client’s device (whether a Web App or Mobile App), you will need to manually configure the connection that links your SIPERB Account to your PBX or ISP. Typically, SIPERB maintains a REGISTER flow from the client (Web or Mobile App) to our servers, which is exclusively open to WebSocket Connections.
Once the client is connected to our servers and registration is complete, call setups can commence. But where do these calls go? This is the role of connections—they manage call setups (INVITEs) originating from the WebRTC client (web or mobile) to your PBX (or ISP). Each connection serves as both an exit point for outgoing calls and an entry point for incoming calls. It’s important to note that the registration required here is distinct from the client-server registration, effectively making each connection a server-to-server link.
There are three types of Connections detailed below. All are default SIP according to RFC 3261.
1. Outbound Registration:
With Outbound Registration, you are required to enter the SIP details from your PBX (or ISP), into our systems, so that we can send the REGISTER messages to your servers, and keep a register flow. This is a typical UAC to UAS register and designed to be a snap-in replacement for a desktop phone, for example a Yealink Desk Phone. In this way, what ever routing or DID for this extension you have configured will simply flow to the Siperb Mobile or Web App. Our systems are designed to typically re-register every 300 seconds, unless your server imposes a maximum expires. The details of the server, like address, and port are required in order to create the connection. It’s important to note that SIPERB is a proxy, so when you make a call the actual INVITE message will get generated by the client (Web or Mobile App), containing all the necessary information for a media session.
If your PBX (or ISP) is not capable of sending or receiving a DTSL stream with Opus codec, then you will need to transcode the call. Call Transcoding is only available on a paid account. When the call is transcoded, the session is initiated via the INVITE message details as it would normally, except the media is pointed to our transcoding servers. This means the INVITE will appear as peer-to-peer, but the media will flow over our network. The media will also be transcoded to DTLS (with Opus codec) from RTP (with G722 codec) or from DTLS (with Opus codec) to RTP (with G722 codec).
Read more: How to Create an Outbound Registration
2. Outbound Trunk:
Outbound Trunks are very similar to Outbound Registration, except that they don’t send out the REGISTER message, this means you don’t get a status on the registration. These are typically used when connecting to the endpoints that are using a static/fixed IP address. Remember that the point of registration is almost only to retrieve an IP address. Also, if you are receiving calls via the Outbound Trunk, you will want to be sure that the Allowed IP address field matches that of the provider or PBX. You cannot have an allow all rule on the Outbound Trunk option.
Read more: How to Create an Outbound Trunk
3. Inbound Registration:
Inbound Registration is when the SIP details, are automatically generated on our side. Once created, it is up to you, to REGISTER with us, just like a typical UAC to UAS scenario. This is a slightly unusual as you will need to create a REGISTER entry within your Asterisk Server, to maintain the registration. With this option, you are not required to open your firewall ports as the REGISTER messages will originate from within your network to us, making the necessary communication. This is a more secure option, but does require additional configuration on the Asterisk side, and not all ISP will offer this option.
Read more: How to Create an Inbound Registration