Product Bulletin: ScopServ releases chan_pjsip to replace deprecated chan_sip
As per Sangoma's official product announcement chan_sip is officially deprecated. ScopServ's officially supported release of Asterisk is 18.x so this effects all ScopTEL systems not updated to chan_pjsip.
ScopTEL version pre-requisites for chan_pjsip support
Minimum version scopserv-telephony25-7.19.0.0.20220628-1.el7 or if you are in a php7 environment the minimum version is scopserv-telephony25-7.19.0.0.20220628-2.el7.php7
New Features and Caveats of chan_pjsip
Feature: Shared Device improvements no longer require pseudo username suffixes thanks to multiple AOR support in chan_pjsip
Example extension 8010 device 2/3 no longer requires username 8010_2/3
chan_sip Shared Device Username Example:
chan_pjsip example:
Caveats: This means that any Shared Device softphone or provisioned desk phone must be re-provisioned with the primary username instead of <Extension>_X
It is highly advised to schedule the conversion of chan_sip to chan_pjsip with the re-provisioning of any Shared Device Extensions to avoid end user downtime.
- ScopCOMM apps must be reset and new QR codes provisioned. For this reason it is advised to put the ScopCOMM push servers 75.98.128.37 75.98.128.38 into the Telephony Security Whitelist to prevent NAT'd IP's from being blacklisted during re-registrations.
- This also applies to any ScopTEAMS registrations. The system admin must edit all User Registrations in the their ScopTEAMS Admin portal and remove the _X suffix from all user accounts and SYNC their accounts. So your ScopTEAMS SBC addresses should also be added to the Security whitelist.
- Any phone provisioned in the ScopTEL APS will automatically have its Shared Device authentication <extension>_X changed to use the primary login/authentication defined on the Extension|Authentication tab after a Telephony Commit. So admin must do a Telephony Commit followed by an APS Commit and then reboot the phone so it downloads the correct authentication credentials.
To remove the <username>_X suffix from ScopCOMM Mobile applications already provisioned the QR Code must be resent after the Telephony Commit.
To resend the QR codes to all ScopCOMM Mobile Extensions
To reset the ScopCOMM Mobile app settings and allow a new QR code to be scanned. Open the ScopCOMM App and tap on the 3 dots to enter the configuration menu.
Tap on Reset Application to remove the current configuration since it's no longer valid.
The user must check their email for the new QR Code and scan the code into the ScopCOMM app.
The ScopCOMM app should automatically register with the server using the updated registration credentials.
- Feature/Caveat: Any Hotdesk extensions or Agent members will also ring registered Shared Devices concurrently when the primary extension is called.
- SRTP/TLS support is greatly improved.
- Load improvements, concurrent channels should improve.
- T.38 Fax transmissions will no longer use chan_sip so fax performance should improve.
- SIP VoIP Interfaces will use Identify and other parameters to check INVITE's for the proper Class of Service lookup. This fixes a known issue where multiple friend registrations to the same IP address/registrar fail to pass the Incoming Class of Service lookup when the incoming INVITE is parsed. This means it is no longer necessary to use the Multiple Trunk feature on Incoming Lines.
- Caveat: It is possible to toggle a server between chan_sip and chan_pjsip but this is a global change and effects all tenants. Only one channel driver can be selected per server and the recommendation is chan_pjsip.
- Caveat: Asterisk sip CLI commands are replaced with pjsip commands. Example: 'sip show peers' becomes 'pjsip show aors'. This does not affect ScopSTATS reports in any way.
- Greatly improved support for WebRTC using wss transport.
Caveat: chan_pjsip does not automatically negotiate transport selection. If the Extension's Phone Options is set to (Auto) the default is to use UDP refer to:
This is critical during chan_sip to chan_pjsip migrations which require ScopCOMM to Share Devices with other SIP User Agents/ Phones. Whenever this situation exists the transport selection for the Extension's Phone Options should be explicitly defined as TCP.
And any provisioned hardware may need it's transport manually defined per Line to be TCP (Yealink)
How to toggle Channel Drivers between chan_sip to chan_pjsip
Edit Telephony|Configuration|Telephony Modules|Protocols|Module Version and select PJSIP from the drop list.
Save
Commit
Restart Services to complete migration to chan_pjsip
Restart Telephony Server, FastAGI Server and Live Monitoring daemons (Realtime) to Finish changing the channel driver to chan_pjsip (this can be done with root/admin GUI access or by SSH). Or simply reboot the server after the Telephony Dial Plan and APS Commits.
To revert to chan_sip
Edit Telephony|Configuration|Telephony Modules|Protocols|Module Version and select SIP from the drop list by referring to the previous example.
Save
Commit
Restart Services to revert channel driver to chan_sip
Restart Telephony Server, FastAGI Server and Live Monitoring daemons (Realtime) to Finish changing the channel driver to chan_pjsip (this can be done with root/admin GUI access or by SSH). Or simply reboot the server after the Telephony Dial Plan and APS Commits.
P-Asserted Migration pre-requisites for STIR/SHAKEN/ATIS support.
Servers configured with RPID caller ID support should be migrated to P-Asserted because RPID cannot support Caller ID enhancements necessary to implement STIR/SHAKEN/ATIS protocols. P-Asserted will also support Caller ID updates on transferred calls. STIR/SHAKEN/ATIS is a new module provided by chan_pjsip
Migrating to P-Asserted
Use the Extensions|Mass Operations|Caller ID tool to mass edit extensions from RPID to P-Asserted.
Change each VoIP Interface to send P-Asserted.
Commit
Polycom, Snom, Aastra/Mitel/Grandstream phones by default use PAI
Yealink phones configured in the ScopTEL APS may require a change to each MAC/Line to enable PAI-FROM.
Verify each line assignment is set to PAI-FROM for all MAC addresses.
Once each MAC address/Line is correctly configured Commit APS changes and reboot all Yealink phones to acquire the new setting.
Toggling between chan_sip and chan_pjsip
Whenever the channel driver is changed in either direction between chan_sip and chan_pjsip you must reset the astdb and restart scopserv_fastagi
Caveat:
Any registered peers/aors will have to re-register with Asterisk. The standard re-registration timer for most SIP User Agents is 3600 seconds (1 hour). To speed up the registration process the User Agent can be rebooted.
Use the Tools|Telephony|Database|Reset Database tool to reset the astdb and follow the instructions.
Once the astdb has been deleted, service asterisk restart and telephony commit are completed you must restart the scopserv_fastagi service to complete the swap.
This can be done in ssh:
service scopserv_fastagi restart
Or this can be done in the GUI using the Telephony Services Manager.