A macro is a small program that runs locally on the room or desk device or board. A macro is written in JavaScript with support for features such as arrow functions, promises, classes, and async/await. All room and desk devices and boards except SX10, support macros.

A macro can register feedback from events, configuration changes, and status changes on the device. The macro can listen for these events and changes, and use the API of the device to invoke further commands and configuration changes. If you combine the use of macros with custom user interface panels, you can augment the user interface with local functionality, for example speed dial buttons.

You need a local Admin user to run with macros involving xAPI commands on the device.

To learn more about how to make custom user interface panels, see the UI Extensions article.

Create and Administer Macros

You can use the Macro Editor to create and administer macros. The editor is available through the local web interface of the device.

The local web interface is available directly from the web browser, for local admin users, or through the customer view in Control Hub from the Device Configurations area. From the web browser, enter http(s)://<endpoint ip or hostname> in the URL address field. Then, enter the credentials for the admin user.

Once in the local web interface, the Macro Editor is availabe from the Customization area on the left side.

If macros are disabled, you are offered the choice to Enable Macros when you try to launch the editor.

Further Information

Read the Local User Administration article and the Advanced Settings article for more information about local users and how to access the local web interface.

Find more details about macros and how to use the Macro Editor in the Customization guide.

Additional learning resources are available from within the Macro Editor:

  • Click Tutorial to open the Cisco Macro Scripting Tutorial.

  • Click Help to find a short introduction to using macros on a device and some code examples to study or use.

Cisco support (TAC) doesn’t support debugging of third-party code, including macros. Please check the Cisco Collaboration Developer community if you need help with macros and third-party code. Also, there are many developer and integrator resources on this site. You can find several macro coding examples here.