Mountain View
Jabber SDK API Documentation

Tutorial: Remote Camera Control

Remote Camera Control

Title In this tutorial it will be covered how to control remote camera through Far End Camera Control (FECC) feature. Supported controls for remote camera are:
  • Pan remote camera to the left
  • Pan remote camera to the right
  • Tilt remote camera down
  • Tilt remote camera up
  • Zoom in
  • Zoom out
In order to control remote camera first it needs to be checked if that is possible. It is done by checking canControlRemoteCamera capability. If capability exists, then before performing any of the control actions it needs to be checked capability for that action exists: Each command has two methods. One to start specific action and other to stop that same action. Command is executed until its stopped. For instance if we start tilting camera down through TelephonyConversation.startRemoteCameraAction it will tilt camera down until we stop tilting camera down through TelephonyConversation.stopRemoteCameraAction.
It is recommended to bind start of an action when button is pressed and stop of an action when button is released. In the snippet below lets see how we can achieve this (in this example we'll perform "ZoomIn" action):

        var conversation;

        // ...
        // Here we choose conversation for which we'll control remote camera.
        // ...

        // ...
        // We'll assume that button for "ZoomIn" has been pressed.
        // ...
        if(conversation.capabilities.canControlRemoteCamera && conversation.capabilities.canCameraZoomIn)
        {
            // Start "ZoomIn" action.
            conversation.startRemoteCameraAction("ZoomIn");
        }

        // ...
        // We'll assume that button for "ZoomIn" has been released.
        // ...
        if(conversation.capabilities.canControlRemoteCamera && conversation.capabilities.canCameraZoomIn)
        {
            // Stop "ZoomIn" action.
            conversation.stopRemoteCameraAction("ZoomIn");
        }
    
For the list of supported camera actions please see RemoteCameraAction.

Next

Previous