After literally MONTHS of research, testing, trial, and error…I have FINALLY figured out a working configuration for a Cisco 7960 SIP Phone on FreePBX.
You can use a res_pjsip extension, but you’ll need to make sure the following 2 options are set:
The Winning Combination
In the FreePBX Admin control panel, go to the extension you’re working with, then go to the Advanced tab and set these:
Force rport = No
Rewrite Contact = No
The Force rport setting allows the phone to register with Asterisk, and the Rewrite Contact setting allows calls to be made to the Cisco phone. Before changing Rewrite Contact to “No”, I was able to dial out from the Cisco 7960, but I could not make calls TO that device.
Once you change these settings, save and Apply Config, then also reboot your phone.
Other Settings and Things To Note
Each FreePBX configuration is somewhat unique, so I won’t be able to go into enough detail here to tell you what your complete setup should look like. However, here are some things to keep in mind:
- Max Contacts – Each res_pjsip extension has a setting that allows multiple concurrent registrations (multiple devices) for a single extension. This is useful for users with a desk phone and a softphone, but you’ll need to make sure you increase this number as you add simultaneous connections (devices) to the res_pjsip extension.
- SIP Port – By default, newer versions of Asterisk use “PJSIP” (or res_pjsip) as the default SIP driver instead of the older “SIP” (or chan_sip) driver. (You can read more about that here and here and watch a good talk here.) I decided to stay with res_pjsip because of the above Max Contacts setup, which fits our use cases pretty well. If you do this, just note that res_pjsip will use port 5060 and chan_sip will use 5160.
I hope this saves someone hours, weeks, and months of troubleshooting. I wish I would have found this information sooner than I did, and that’s why I decided to post this for you.
Comment below or mail me if you have more questions on this topic! 🙂