Example of a Macro running on a Cisco video endpoint that performs a POST action. In this case the macro calls my home automation system to switch ON/OFF/DIMM/COLOR a lamp.
Equipment: Cisco Webex DX80
Firmware: RoomOS 2019-02-22. The minimum CE firmware version is 9.6.1 (when HTTP POSTs were introduced).
Connected: The Cisco Webex video unit is registered to the Cisco Webex Teams cloud, but this should also work if it's registered on-premise.
Setup: This DX80 is connected to my home network. Firewall rules give it just enough access to make lamp on/off/dim/color API calls. Check out how the software was setup in the feature introduction.
NOTE: you can do the same on other Cisco video units with Touch 10 panels.
- Press button on DX80 (to switch on a lamp)
- Macro code (JS) detects button press and executes related code
- This code does an API call (HTTP POST) to my home automation system
- Home automation system executes requested action: lamp is ON!
-
Browse to DX80 admin interface
-
Login with admin rights. This is needed for access to Macros the integrator role gives you access to the in-room control panel editor
-
Click “Launch Editor” and build your screen(s)
-
Save your screen and see them in real live: press the button (top-right)
NOTE: don’t forget to export your configuration! Expand the top right menu:
-
Open the Macro editor
-
Click “Create a new Macro”
-
Paste the code from the .js file in the editor and modify as needed
-
Apply your code changes by saving them NOTE: below the code editor you find the console. When you use “console.log(‘abc’);” entries in your code the values will appear in the console. Great for troubleshooting.
-
Save code changes and Editor changes and test your code.
Learning lab: Introduction to xAPI for Cisco Collaboration Devices learning lab
Learning lab: Creating custom In-Room Controls and Macros
Learning lab: Customizing Collaboration Devices from Code
This is the home tab, shared to give you an idea of what you could technically do.
This example is only a sample and is NOT guaranteed to be bug free and production quality. The sample macros are meant to:
- Show how to use CE Macros.
- Serve as a step by step example of building a macro using JavaScript and integration with the Codec XAPI
- Provided as a guide for a developer to see how to initialize a macro and set up handlers for user and dialog updates.
Support for the macros is provided on a "best effort" basis via Github. Like any custom deployment, it is the responsibility of the partner and/or customer to ensure that the customization works correctly and this includes ensuring that the macro is properly integrated into 3rd party applications.