CE SIP Messaging Channel for Remote Endpoint Control

Sending messages between endpoints over SIP seems so 2010. If you look at this feature on the surface it does seem limited. It is once you enable it with Macros or an xAPI application does it potential use become more apparent. "xCommand Call FarEndMessage Send" does not get a lot of coverage in discussions online , in fact I was unable to locate a single article even explaining its use but it is a very handy API command worthy of understanding. Here are some of the feature uses I was able to dream up but I am sure there are others:
  • Far end camera control, volume control, and mute control. Anything on the remote endpoint that can be controlled or set by xAPI commands.
  • Control far end external devices such as far end HDMI switch using macros with http commands. You could even adjust lights and blinds etc using this method if they are integrated with the remote codec.

Configuring SIP Messages

By now I am pretty sure most of you understand the theory behind a point to point call with a established call control platform like Communications Manager(CUCM). In my examples I am going to ignore the basics and focus on once the call once it is established. This configuration only works for point to point calls.

Once a call is established, if the endpoint is enabled it can send and receive custom SIP messages. Below is a great macro example of being able to control a camera via this method. If FECC natively works this is overkill but some 3rd party camera do have issues with native FECC control like the Sony SRG300HD.

I have not included the UI controls in the example. So you will have to build a Touch 10 UI that matches up with the valid input required by the macro. The important part of the example is the way in which the SIP message commands are used. The example macro is loaded on both endpoints of a p2p setup and allows both endpoints to control each others camera.

There are two ways to send the messages across the SIP channel using either a macro running on the local CE endpoint or from a application connecting to the local device utilizing  xAPI commands. I personally have done this using a Pi running nodejs sending commands to a Webex Room Kit to send commands to a SX80 to control the camera. The dependency is the remote end must have a macro/application to receive the messages and translate the messages into a action with xAPI.

Key commands for enabling SIP messaging:

Send: xapi.command('Call FarEndMessage Send', { Your command goes here})

Receive: xapi.event.on('FarEndMessage Receive', (event) => {
//Do something with your command })

Enable: xapi.config.set('Conference FarendMessage Mode', 'On')

Nothing to hard and with a lot of potential.



  1. Hi, i enjoy reading your article. I have some webex SIP messaging issue and wonder if you could assist.

    We want to input alphabets into a ZOOM connector room with our Cisco room kit. However, send DTMF only allow numeric input.

    Do you have any idea how we can send our alphabet passcode into zoomcrc.com interface via the Touch 10?

    thank you very much

    1. Sorry you choose to use Zoom. This article does not really apply to what you mentioned. You would need to create a custom Zoom meeting launch to allow what your refering to so the user could input alphanumeric before the call is made. This would allow you to append the passcode in the meeting SIP URI which I believe Zoom allows.


Note: Only a member of this blog may post a comment.