Setting Event management variables via CLI

As per the Event Management Wiki:

If you wish to set channel variable(s) for a node from the CLI, you may use the following command:

*CLI> rpt setvar <name=value> [<name=value>…]

For Example, this would set the “MYVAR” variable to “1” for node 2000:

*CLI> rpt setvar 2000 MYVAR=1

So let’s say I enter from the CLI:

*CLI> rpt setvar 1100 RPT_TXKEYED=1

Great, I’ve set the variable RPT_TXKEYED=1 on node 1100

So what? It doesn’t nothing so what’s the point?

Were you trying to key the repeater with that var? I not sure that the point. Isn’t that a status indicating the node is keyed?

I was thinking it might be a way of forcing PTT but apparently not. If only an indicator of being keyed, I see no reason to allow it to be set to a particular state via the CLI

setvar is part of asterisk.
event management is not the same level and do not interact.

You would use this to set or change variables you created globally or instance.

I have not looked at the wiki, perhaps it needs revised.

This is valid on our older version of asterisk, but depreciated with newer versions where ‘set’ is the method.

There use to be additional command arguments that could be made as I remember, like the channel (where we use ‘radio’ channel) etc… and you can have multiple channels and separate vars in each.
But you can search the web for that info, it’s a asterisk thing.

However…
You can retrieve a event management var and pass it to a global var to act against.

And I might also say if you are simply wanting to turn the tx on for a short period of time…
why not play audio silence of a specific length.
Make files of 5,10,15,30 sec of silence and call them by CMD= playbackscript

A ‘birdbath’ command will clear and close.

Revised… I think you might want to use localplay to keep from keying linked stations.

App_rpt does need a command to key the Tx but as far as I know there is not one.

Agree that it is weird that RPT_TXKEYED can be modified with setvar.

As far as I know and have experimented, the ‘on-event’ stuff is report/read only.
But you can read and setvar the value returned for working in scripts.

Playing strings of silence
(also in the asterisk voice library I believe)
/var/lib/asterisk/sounds/silence
works the same for engaging tx. so with birdbath (cop,23), it has a cancel.
So as I have suggested it to folks for a decade now, seems nobody wants to use it I guess.
To simple ? or not really obtaining objectives not stated.

Workarounds are rarely a long term solution to an issue that has been brought up more than a few times…

you need to read this page that your quoting Event Management - AllStarLink Wiki

What exactly do you need to engage the node tx for… what is the end game ?
Perhaps if we know that we can provide a better solution.
Is it a secret ? I can’t help if it is.

A solution is a solution.
It’s not complicated and it’s easy and does not involve complications from folks who do not think the implications of actions though for the integrity of the system.

I consider this solved unless you can tell me the end game of the need to engage the TX in a way that the solution does not fit.

app_rpt… the software we are actually running is and always has been a work-around project for asterisk. We twist the rules of asterisk to do what we need to do. Each radio node is a work-around to a phone extension, with rules and definite parms. Pure and simple.

I probably have done more to twist those same rules myself of both asterisk and app_rpt than most over the years to suite my purpose and never did I complain about how it was put together. It is a accepted fact with me.

You are basically working with open source beta on a continuous basis. If you are not willing to put in some work to get what you want, don’t expect others to write code for you. They have already shared code to get you to this point. The rest is up to you.

I can see some value in being able to key the transmitter, could be dangerous, but might have some value. We already have COP 6 PTT (phone mode only) I’m not sure why this is phone only. I think this respects the time out timer (emulates COR input?) Simple change to allow non phone activated command. Could also be a added command but there is no room between 1 and 10, where I would want to place an added command.

Steve N4IRS

I think a command to toggle the node’s Tx would be useful for testing and tuning. But event management is not the right place for it. It should be a COP function similar to COP 4 but with no test tone and only key the local Tx. Seems like it would be exceedingly simple to merely assert the proper I/O.

COP commands 1 thru 65 currently exist. Would anyone like to code COP 66 -- Local PTT On/Off?

Yes, it would be helpful. In my case, being able to control PTT from CLI would be helpful for things like running NewsLine, etc. when ASL is used with a controller and you want to force an ID before the broadcast starts.

I also have a script that generates DTMF. Controlling PTT as part of that script would likewise be very useful