This feature makes all SIP phones that are registered on a single account ring simultaneously. Consequently, if an end user has three SIP phones (e.g., a mobile application on a smartphone, on a tablet, and a desktop IP phone), he can receive calls to all three devices simultaneously. The same account ID and password can be applied for all end user endpoints.
To enable call forking on the Configuration server, go to ClusterSuite -> PortaSIP Cluster -> <your_sip-cluster>. Select MUB2bua group. Configure call forking options:
- call_forking – select how the SIP phones will ring:
- one_by_one – SIP phones ring in priority sequence (from higher to lower). The end user chooses and assigns priority in the SIP phone settings.
If priority is not assigned to a SIP phone, then it has the lowest priority, by default.
- grouped – SIP phones that take equal priority are grouped and ring simultaneously when called (from higher to lower priority).
- parallel – all SIP phones ring simultaneously.
- disabled – the last registered SIP phone rings.
The time of registration is the time when the last REGISTER request was sent from the SIP phone.
- one_by_one – SIP phones ring in priority sequence (from higher to lower). The end user chooses and assigns priority in the SIP phone settings.
- call_forking_seq_timeout – define the minimum time (in seconds) during which a SIP phone rings before a call is forwarded to the next SIP phone. This parameter is applied only for the one_by_one or grouped call forking options.
If your call forking mode is grouped or one-by-one, you can additionally fine-tune call forking per user so that PortaSIP stops sending a call to other devices when a user is either busy or declines the call.
To do this, configure the service policy, define the respective SIP response codes (486 and/or 603) for the stop_call_forking_code attribute and assign this service policy to the customer’s account.
When a customer rejects an incoming call, PortaSIP receives one of the defined response codes and stops forking the call to other devices.
Call forking enables an administrator to configure simultaneous calls to user SIP phones without creating individual accounts for each SIP phone. This reduces the administrative load and simplifies service management.
Missed calls are not shown if a call is answered elsewhere
When call forking mode is grouped or parallel, SIP phones ring simultaneously. When a user picks up one of their phones, the other SIP phones stop ringing and do not show a “missed call” notification.
How it works
PortaSIP sends a CANCEL request with a Reason header to the remaining SIP phones. This request contains the information that a call is answered on another device:
Reason: SIP; cause=200; text="Call completed elsewhere"
Say John Doe has three SIP phones. All of them ring at once since parallel call forking mode is configured. When John picks up his phone, PortaSIP receives a 200 OK response code. PortaSIP includes this code in the Reason header in the CANCEL request and sends it to the remaining two phones. These phones handle the request and don’t show this incoming call as being missed.
Missed calls are not shown if a call is answered elsewhere if the following conditions are met:
- SIP devices support RFC 3326. See Supported SIP RFCs section for details.
- Call forking mode is grouped or parallel.
- A user picks up the phone (does not decline).
If the call is not answered on any device or the call is sent straight to the voicemail, then all devices will show the “missed call” notification.