Matrix: How to trigger a remote control (CTL) on another matrix

I have a linked matrix system

Matrix # 1 has the main user panel

Matrix #2 has some remote 4wires that I want to add into a Partyline (PL) via a route

I want to trigger the route by pressing a key on the Main user panel on system #1

My problem is I cannot add the 4wire to the Partyline (PL) or trigger the control remotely

Basically, I want control #1 (on matrix #1) to trigger control #1 (on matrix# 2)




There are couple of ways to solve this .

The trick is to create all the controls and actions in matrix #2 and then use a key on matrix #1 to trigger a secondary action (sys2-CTL) that is associated with a port or group in matrix #2


Option A (simplest)

  1. create the route and controls in matrix #2

Example: A 4wire port on matrix #2 is listening to a PL

When using routes the source must always be a “local” port / group, PL etc. .. the destination can be a local or remote as shown below.

2. add the route into a control on matrix #2

3. program a key on a panel on matrix #1 and make a stacked key

pressing the key will trigger both matrix #1 and matrix #2 controls

you can make the stacked key with just the controls for both matrix #1 / #2


Option B (complicated - Seek advice from Clear-Com Application Engineering team first)

if you need to use GPI rather than a key on panel then you need to use a control macro.

A control macro is the command line version of a Logic Maestro diagram

here is an an example of a control macro , where control “main control” (on matrix#1) will trigger a remote control “Graham” (on matrix #2) by triggering the correct CARD/PIN # for the control “Graham”



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 using ClearCom.ScriptHost; using ClearCom.ScriptLibrary; using ClearCom.Entities; using EMS.MapClient; using EMS.MapClient.Tables; using Shared.Enums; using Action = EMS.MapClient.Tables.Actions.Action; namespace CustomScript { public class UserScript : ScriptBase { public override void OnUserStart() { // this control will use a control in sys 1 to trigger a control in sys 2 //declare sys 2 int rsys =2; //get sys 1 control , select configuration entities, GPSF, find control and double click on it ControlMacro sys1ctl= ControlMacro.GetControl("main ", "ctl "); //list the sys 2 control Talk and listen card / pin number // control PRCHE1 = 28.3 // control PRCHE2 = 28.6 // Graham = 28.9 // variable sys1ctl will trigger the remote card/pin(2) // check there are no complie errors in the bottom window sys1ctcl.Triggers(ControlActions.DCCAction(28,9,rsys)); } } }

download the attached zip file, which includes a video and system drawing for a clearer explanation



also see