[arm-allstar] Help with RXKEYED and TXKEYED events

David McGough kb4fxc at inttek.net
Tue Jan 5 10:59:53 EST 2021


Hi Kevin,

I guess the problem you're having is that the on_air sign will sometimes 
be off, when it should be on. Or, vice-versa?



73, David KB4FXC






On Mon, 4 Jan 2021, Kevin Davis wrote:

> I’m still trying to figure a way to avoid these race conditions. Is there a way to include an epoch time or a chronological asterisk event number of some sort in the call to my Python script?  I could the publish this as a part of my MQTT payload, and have my client ignore payloads with a epoch or event number lower than a saved maximum.  
> 
> 
> 
> > On Dec 27, 2020, at 1:41 PM, Kevin Davis <blu666z at gmail.com> wrote:
> > 
> > 
> > Occasionally, when there are near instantaneous t|RX_KEYED and f|RX_KEYED events, I think I'm running into a race condition where my MQTT payloads of "1" for t|RX_KEYED and "off" for f|RX_KEYED arrive at the broker out of sequence. 
> > 
> > python2 /usr/local/sbin/on_air.py 1 = s|t|RPT_RXKEYED
> > python2 /usr/local/sbin/on_air.py 0 = s|f|RPT_RXKEYED
> > 
> > 
> > Am I correct in thinking that based on threading, the python script that was called on f|RX_KEYED could complete before the initial t|RX_KEYED script, thus making the MQTT payloads out of order?
> > 
> > 
> > 
> >> On Sun, Dec 20, 2020 at 8:10 AM David McGough <kb4fxc at inttek.net> wrote:
> >> 
> >> Yes, I believe just using TXKEYED should work satisfactorily.
> >> 
> >> 73, David KB4FXC
> >> 
> >> On Sun, 20 Dec 2020, "Kevin Davis via ARM-allstar" wrote:
> >> 
> >> > Thanks David.
> >> > 
> >> > I answered my own question as I was typing up the email(funny how that
> >> > happens), but decided to still send it for confirmation.
> >> > 
> >> > I guess in this case, I'll use only the TXKEYED event since it covers both
> >> > scenarios I want my sign lit; I'm TXing or RXing from the reflector.
> >> > 
> >> > On Sun, Dec 20, 2020 at 7:58 AM David McGough <kb4fxc at inttek.net> wrote:
> >> > 
> >> > >
> >> > > You're correct. In duplex=2 or duplex=3, and RPT_RXKEYED event will
> >> > > immediately have a following RPT_TXKEYED event.
> >> > >
> >> > >
> >> > >
> >> > > On Sun, 20 Dec 2020, "Kevin Davis via ARM-allstar" wrote:
> >> > >
> >> > > > Morning all.
> >> > > >
> >> > > > I'm working on controlling an "On-Air" sign using RPT events and MQTT.
> >> > > I'm
> >> > > > trying to understand why, when I key up my node, both the RXKEYED and
> >> > > > TXKEYED events are both triggered.  Is it because I'm on a radioless node
> >> > > > running full duplex?
> >> > > >
> >> > > >
> >> > > > ***** RPT.CONF *****
> >> > > > python2 /usr/local/sbin/on_air.py 1 = s|t|RPT_RXKEYED
> >> > > > python2 /usr/local/sbin/on_air.py 1 = s|t|RPT_TXKEYED
> >> > > > python2 /usr/local/sbin/on_air.py 0 = s|f|RPT_RXKEYED
> >> > > > python2 /usr/local/sbin/on_air.py 0 = s|f|RPT_TXKEYED
> >> > > >
> >> > > >
> >> > > > ***** Asterisk Log *****
> >> > > > -- Event on node 507410 doing shell command python2
> >> > > > /usr/local/sbin/on_air.py 1 for condition s|t|RPT_RXKEYED
> >> > > > -- Event on node 507410 doing shell command python2
> >> > > > /usr/local/sbin/on_air.py 1 for condition s|t|RPT_TXKEYED
> >> > > > -- Event on node 507410 doing shell command python2
> >> > > > /usr/local/sbin/on_air.py 0 for condition s|f|RPT_RXKEYED
> >> > > > -- Hungup 'DAHDI/pseudo-1027201242'
> >> > > > -- Event on node 507410 doing shell command python2
> >> > > > /usr/local/sbin/on_air.py 0 for condition s|f|RPT_TXKEYED
> >> > > >
> >> > > >
> >> > > > ***** Python Script *****
> >> > > > import paho.mqtt.publish as publish
> >> > > > import sys
> >> > > > from datetime import datetime
> >> > > >
> >> > > > if sys.argv[1] == '1':
> >> > > >         payload = 'ON'
> >> > > > else:
> >> > > >         payload = 'OFF'
> >> > > >
> >> > > > payload += ' ' + str(datetime.now())
> >> > > > publish.single(topic="ke7k/on_air/status", payload=payload, retain=True,
> >> > > > hostname="192.168.1.3")
> >> > > >
> >> > > >
> >> > > > ***** MQTT Payload Published *****
> >> > > > ON 2020-12-20 07:22:32.323583
> >> > > > ON 2020-12-20 07:22:32.395017
> >> > > > OFF 2020-12-20 07:22:34.326844
> >> > > > OFF 2020-12-20 07:22:35.624007
> >> > > > _______________________________________________
> >> > > >
> >> > > > ARM-allstar mailing list
> >> > > > ARM-allstar at hamvoip.org
> >> > > > http://lists.hamvoip.org/cgi-bin/mailman/listinfo/arm-allstar
> >> > > >
> >> > > > Visit the BBB and RPi2/3/4 web page - http://hamvoip.org
> >> > > >
> >> > >
> >> > >
> >> > _______________________________________________
> >> > 
> >> > ARM-allstar mailing list
> >> > ARM-allstar at hamvoip.org
> >> > http://lists.hamvoip.org/cgi-bin/mailman/listinfo/arm-allstar
> >> > 
> >> > Visit the BBB and RPi2/3/4 web page - http://hamvoip.org
> >> > 
> >> 
> 



More information about the ARM-allstar mailing list