In this entry we will work in DTMF interworking, as already mentioned some devices doesn’t support all DTMF modes and Oracle SBC can help to normalize the communication between different endpoints.
Let’s imagine the following scenario (the same scenario we always use!):
The only difference here is the support for RFC2833 in the External and NO DTMF/Audio support in the Internal (you can reference the entry Session Initiation Protocol – Dual-tone multi-frequency (DTMF) in case you have any doubt modifying DTMF support). An important note here is that in this specific case, calls are successfully connected but the problem comes when interchanging DTMF digits.
In this case Oracle SBC can interwork between the devices converting from RFC2833 to/from SIP Info messages, this is shown in the following diagram:
DTMF interworking can work in conjunction with codec-policy but in this case, feel free to refer the configuration guide. In this case we will not use transcoding, let’s start removing the codec-policy from the realm-interfaces:
Lets apply the configuration required to support RFC2833 in the External realm and SIP INFO messages in the Internal:
For purpose of test digits 1 and 2 will be sent/received from External softphone using RFC2833 and SIP INFO messages in the Internal realm. Captures were taken in the Ubuntu VMs and merged to show the following information.
Now applying a filter in wireshark to only display the DTMF information:
The following image clearly shows RTP Event sent and received in the External realm and SIP INFO messages in the Internal realm, having the SBC converting those messages.
This concludes this entry.