DMRmonitor setup


Peter M0NWI
 

Cort/Steve,


I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?


I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.


I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.


I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?


This is what I'm getting;


root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']



I've tried, but getting stuck now.

73,
Peter



Cort N0MJS <n0mjs@...>
 

DMRmonitor is really i its infancy. I’m not really happy with a lot of it, but it’s out there. The hyphen shouldn’t be a problem — hyphens are valid in strings. 

The problem you’re getting is it’s trying to set a dictionary value for the key "IPSC-GB7HS” and that key does not exist.

Most probable answer is that you’re getting an RCM message before the first dump of the config dict from DMRlink to web_tables… Does it kill the web_tables process? If not, does the problem persist past the first load of the config table into web_tables? I’m making wild speculation here — but without looking deeper than I have time to, I know there are a number of circumstances with this code where things aren’t stable until it’s been running for a few seconds (maybe up to a minute) because of numerous “chicken and egg” problems — but I’ve never had it terminate the process on me, the errors just stop after all of the data has been loaded in… and often times it only happens when the repeaters are active right on startup of web_tables.

Yeah, I know, poor programming… It’s how I work… get it working at all, then clean it up.


My vacation is over now and time to dig into things is scarce. If I were troubleshooting this problem, and it was clear web_tables had received a config dump from dmrlink, I’d add temporary code to prettyprint CTABLE and _name between lines 122 and 123 and find out what’s going on that way.


0x49 DE N0MJS

On Jul 20, 2017, at 11:25 AM, Peter M0NWI <peter-martin@...> wrote:

Cort/Steve,

I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?

I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.

I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.

I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?

This is what I'm getting;

root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']

<dummyfile.0.part>

I've tried, but getting stuck now.

73,
Peter



Cort Buffington
785-865-7206


Peter M0NWI
 


Thanks Cort, I'll add some debug statements, but I'm not sure the config is being dumped at all, or i don't see a message tell me it has, you're right, it doesn't crash, I just keep getting the errors.

Can I just confirm that i should just be running web_tables, and that tcp_client is called by it?

Thanks
Peter


Sent from Outlook
From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 17:57:56
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
DMRmonitor is really i its infancy. I’m not really happy with a lot of it, but it’s out there. The hyphen shouldn’t be a problem — hyphens are valid in strings. 

The problem you’re getting is it’s trying to set a dictionary value for the key "IPSC-GB7HS” and that key does not exist.

Most probable answer is that you’re getting an RCM message before the first dump of the config dict from DMRlink to web_tables… Does it kill the web_tables process? If not, does the problem persist past the first load of the config table into web_tables? I’m making wild speculation here — but without looking deeper than I have time to, I know there are a number of circumstances with this code where things aren’t stable until it’s been running for a few seconds (maybe up to a minute) because of numerous “chicken and egg” problems — but I’ve never had it terminate the process on me, the errors just stop after all of the data has been loaded in… and often times it only happens when the repeaters are active right on startup of web_tables.

Yeah, I know, poor programming… It’s how I work… get it working at all, then clean it up.


My vacation is over now and time to dig into things is scarce. If I were troubleshooting this problem, and it was clear web_tables had received a config dump from dmrlink, I’d add temporary code to prettyprint CTABLE and _name between lines 122 and 123 and find out what’s going on that way.


0x49 DE N0MJS

On Jul 20, 2017, at 11:25 AM, Peter M0NWI <peter-martin@...> wrote:

Cort/Steve,

I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?

I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.

I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.

I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?

This is what I'm getting;

root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']

<dummyfile.0.part>

I've tried, but getting stuck now.

73,
Peter



Cort Buffington
785-865-7206


Steve N4IRS
 

I'm running tcp_client.py

On 7/20/2017 1:37 PM, Peter M0NWI wrote:

Thanks Cort, I'll add some debug statements, but I'm not sure the config is being dumped at all, or i don't see a message tell me it has, you're right, it doesn't crash, I just keep getting the errors.

Can I just confirm that i should just be running web_tables, and that tcp_client is called by it?

Thanks
Peter


Sent from Outlook
From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 17:57:56
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
DMRmonitor is really i its infancy. I’m not really happy with a lot of it, but it’s out there. The hyphen shouldn’t be a problem — hyphens are valid in strings. 

The problem you’re getting is it’s trying to set a dictionary value for the key "IPSC-GB7HS” and that key does not exist.

Most probable answer is that you’re getting an RCM message before the first dump of the config dict from DMRlink to web_tables… Does it kill the web_tables process? If not, does the problem persist past the first load of the config table into web_tables? I’m making wild speculation here — but without looking deeper than I have time to, I know there are a number of circumstances with this code where things aren’t stable until it’s been running for a few seconds (maybe up to a minute) because of numerous “chicken and egg” problems — but I’ve never had it terminate the process on me, the errors just stop after all of the data has been loaded in… and often times it only happens when the repeaters are active right on startup of web_tables.

Yeah, I know, poor programming… It’s how I work… get it working at all, then clean it up.


My vacation is over now and time to dig into things is scarce. If I were troubleshooting this problem, and it was clear web_tables had received a config dump from dmrlink, I’d add temporary code to prettyprint CTABLE and _name between lines 122 and 123 and find out what’s going on that way.


0x49 DE N0MJS

On Jul 20, 2017, at 11:25 AM, Peter M0NWI <peter-martin@...> wrote:

Cort/Steve,

I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?

I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.

I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.

I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?

This is what I'm getting;

root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']

<dummyfile.0.part>

I've tried, but getting stuck now.

73,
Peter



Cort Buffington
785-865-7206



Cort N0MJS <n0mjs@...>
 

Actually, they’re totally different. tcp_client was the first attempt at using TCP and then I build web_tables… but because I knew Steve was using tcp_client, I didn’t want to just overwrite it, so made a new file with a more accurate name…. like I said, this thing is far, far from prime time :)

set logging to DEBUG and you’ll know if you’re getting the config and building the it’s internal dictionaries… that’s gonna be really noisy… just try and prettyprint CTABLE…. if there’s stuff there, you got the config, if it stays empty, you didn’t.

On Jul 20, 2017, at 12:37 PM, Peter M0NWI <peter-martin@...> wrote:


Thanks Cort, I'll add some debug statements, but I'm not sure the config is being dumped at all, or i don't see a message tell me it has, you're right, it doesn't crash, I just keep getting the errors.

Can I just confirm that i should just be running web_tables, and that tcp_client is called by it?

Thanks
Peter


Sent from Outlook
From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 17:57:56
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
DMRmonitor is really i its infancy. I’m not really happy with a lot of it, but it’s out there. The hyphen shouldn’t be a problem — hyphens are valid in strings. 

The problem you’re getting is it’s trying to set a dictionary value for the key "IPSC-GB7HS” and that key does not exist.

Most probable answer is that you’re getting an RCM message before the first dump of the config dict from DMRlink to web_tables… Does it kill the web_tables process? If not, does the problem persist past the first load of the config table into web_tables? I’m making wild speculation here — but without looking deeper than I have time to, I know there are a number of circumstances with this code where things aren’t stable until it’s been running for a few seconds (maybe up to a minute) because of numerous “chicken and egg” problems — but I’ve never had it terminate the process on me, the errors just stop after all of the data has been loaded in… and often times it only happens when the repeaters are active right on startup of web_tables.

Yeah, I know, poor programming… It’s how I work… get it working at all, then clean it up.


My vacation is over now and time to dig into things is scarce. If I were troubleshooting this problem, and it was clear web_tables had received a config dump from dmrlink, I’d add temporary code to prettyprint CTABLE and _name between lines 122 and 123 and find out what’s going on that way.


0x49 DE N0MJS

On Jul 20, 2017, at 11:25 AM, Peter M0NWI <peter-martin@...> wrote:

Cort/Steve,

I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?

I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.

I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.

I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?

This is what I'm getting;

root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']

<dummyfile.0.part>

I've tried, but getting stuck now.

73,
Peter



Cort Buffington
785-865-7206


Cort Buffington
785-865-7206


Steve N4IRS
 

That's what I get for not keeping up with the code. ;)

On 7/20/2017 2:20 PM, Cort N0MJS wrote:
Actually, they’re totally different. tcp_client was the first attempt at using TCP and then I build web_tables… but because I knew Steve was using tcp_client, I didn’t want to just overwrite it, so made a new file with a more accurate name…. like I said, this thing is far, far from prime time :)

set logging to DEBUG and you’ll know if you’re getting the config and building the it’s internal dictionaries… that’s gonna be really noisy… just try and prettyprint CTABLE…. if there’s stuff there, you got the config, if it stays empty, you didn’t.

On Jul 20, 2017, at 12:37 PM, Peter M0NWI <peter-martin@...> wrote:


Thanks Cort, I'll add some debug statements, but I'm not sure the config is being dumped at all, or i don't see a message tell me it has, you're right, it doesn't crash, I just keep getting the errors.

Can I just confirm that i should just be running web_tables, and that tcp_client is called by it?

Thanks
Peter


Sent from Outlook
From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 17:57:56
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
DMRmonitor is really i its infancy. I’m not really happy with a lot of it, but it’s out there. The hyphen shouldn’t be a problem — hyphens are valid in strings. 

The problem you’re getting is it’s trying to set a dictionary value for the key "IPSC-GB7HS” and that key does not exist.

Most probable answer is that you’re getting an RCM message before the first dump of the config dict from DMRlink to web_tables… Does it kill the web_tables process? If not, does the problem persist past the first load of the config table into web_tables? I’m making wild speculation here — but without looking deeper than I have time to, I know there are a number of circumstances with this code where things aren’t stable until it’s been running for a few seconds (maybe up to a minute) because of numerous “chicken and egg” problems — but I’ve never had it terminate the process on me, the errors just stop after all of the data has been loaded in… and often times it only happens when the repeaters are active right on startup of web_tables.

Yeah, I know, poor programming… It’s how I work… get it working at all, then clean it up.


My vacation is over now and time to dig into things is scarce. If I were troubleshooting this problem, and it was clear web_tables had received a config dump from dmrlink, I’d add temporary code to prettyprint CTABLE and _name between lines 122 and 123 and find out what’s going on that way.


0x49 DE N0MJS

On Jul 20, 2017, at 11:25 AM, Peter M0NWI <peter-martin@...> wrote:

Cort/Steve,

I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?

I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.

I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.

I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?

This is what I'm getting;

root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']

<dummyfile.0.part>

I've tried, but getting stuck now.

73,
Peter



Cort Buffington
785-865-7206


Cort Buffington
785-865-7206



Peter M0NWI
 

YES!


Got it, the pointer was when you said it should be getting the config.


You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!


All OK now, thanks, really nice page, but I'm utilitarian anyway.


Great stuff Cort.


73,

Peter




From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Steve N4IRS <szingman@...>
Sent: 20 July 2017 19:21
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
That's what I get for not keeping up with the code. ;)

On 7/20/2017 2:20 PM, Cort N0MJS wrote:
Actually, they’re totally different. tcp_client was the first attempt at using TCP and then I build web_tables… but because I knew Steve was using tcp_client, I didn’t want to just overwrite it, so made a new file with a more accurate name…. like I said, this thing is far, far from prime time :)

set logging to DEBUG and you’ll know if you’re getting the config and building the it’s internal dictionaries… that’s gonna be really noisy… just try and prettyprint CTABLE…. if there’s stuff there, you got the config, if it stays empty, you didn’t.

On Jul 20, 2017, at 12:37 PM, Peter M0NWI <peter-martin@...> wrote:


Thanks Cort, I'll add some debug statements, but I'm not sure the config is being dumped at all, or i don't see a message tell me it has, you're right, it doesn't crash, I just keep getting the errors.

Can I just confirm that i should just be running web_tables, and that tcp_client is called by it?

Thanks
Peter


Sent from Outlook
From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 17:57:56
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
DMRmonitor is really i its infancy. I’m not really happy with a lot of it, but it’s out there. The hyphen shouldn’t be a problem — hyphens are valid in strings. 

The problem you’re getting is it’s trying to set a dictionary value for the key "IPSC-GB7HS” and that key does not exist.

Most probable answer is that you’re getting an RCM message before the first dump of the config dict from DMRlink to web_tables… Does it kill the web_tables process? If not, does the problem persist past the first load of the config table into web_tables? I’m making wild speculation here — but without looking deeper than I have time to, I know there are a number of circumstances with this code where things aren’t stable until it’s been running for a few seconds (maybe up to a minute) because of numerous “chicken and egg” problems — but I’ve never had it terminate the process on me, the errors just stop after all of the data has been loaded in… and often times it only happens when the repeaters are active right on startup of web_tables.

Yeah, I know, poor programming… It’s how I work… get it working at all, then clean it up.


My vacation is over now and time to dig into things is scarce. If I were troubleshooting this problem, and it was clear web_tables had received a config dump from dmrlink, I’d add temporary code to prettyprint CTABLE and _name between lines 122 and 123 and find out what’s going on that way.


0x49 DE N0MJS

On Jul 20, 2017, at 11:25 AM, Peter M0NWI <peter-martin@...> wrote:

Cort/Steve,

I'm trying to get the DMRMonitor package running, but struggling and could do with a steer?

I've downloaded and setup the DMRlink bridge code using the socket-reporting branch (in /opt/dmrrep), also installed and configured the DMRmonitor package (in /opt/dmrrep/dmrmonitor) and its dependencies, I have got the 2 talking connected to each other, and I can also surf to the webpage being served from the code.  When running the application interactively I'm getting error messages on the data coming into dmrmonitor from dmrlink, and the web template is not filling out.  DMRLink is running supporting all the repeater bridging without problem.

I've checked the DMRlink.cfg and I've got the 2 options RCM and and CON_APP set to true.

I'm wondering if have a hyphen in the middle of my IPSC names, is not allowed?

This is what I'm getting;

root@www:/opt/dmrrep/dmrmonitor# ./web_tables.py
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' successfully downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' successfully downloaded
INFO:root:Initiating Connection to Server.
INFO:root:Connected.
INFO:root:Resetting reconnection delay
INFO:root:static website requested: <Request at 0xb618276c method=GET uri=/ clientproto=HTTP/1.1>
Unhandled Error
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 88, in callWithLogger
    return callWithContext({"system": lp}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/log.py", line 73, in callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 118, in callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/usr/lib/python2.7/dist-packages/twisted/python/context.py", line 81, in callWithContext
    return func(*args,**kw)
--- <exception caught here> ---
  File "/usr/lib/python2.7/dist-packages/twisted/internet/posixbase.py", line 614, in _doReadOrWrite
    why = selectable.doRead()
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 214, in doRead
    return self._dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/internet/tcp.py", line 220, in _dataReceived
    rval = self.protocol.dataReceived(data)
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 180, in dataReceived
    self._consumeData()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 225, in _consumeData
    self._consumePayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 352, in _consumePayload
    self._processPayload()
  File "/usr/lib/python2.7/dist-packages/twisted/protocols/basic.py", line 398, in _processPayload
    self.stringReceived(self._payload.getvalue()[:-1])
  File "./web_tables.py", line 413, in stringReceived
    process_message(data)
  File "./web_tables.py", line 370, in process_message
    process_rcm(_message[1:])
  File "./web_tables.py", line 137, in process_rcm
    CTABLE[_name]['PEERS'][_source][_ts]['STATUS'] = _status
exceptions.KeyError: 'IPSC-GB7HS'
INFO:root:Lost connection.  Reason: [Failure instance: Traceback (failure with no frames): <type 'exceptions.KeyError'>: 'IPSC-GB7HS']

<dummyfile.0.part>

I've tried, but getting stuck now.

73,
Peter



Cort Buffington
785-865-7206


Cort Buffington
785-865-7206



Steve N4IRS
 

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:

YES!


Got it, the pointer was when you said it should be getting the config.


You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!


All OK now, thanks, really nice page, but I'm utilitarian anyway.


Great stuff Cort.


73,

Peter







Cort N0MJS <n0mjs@...>
 

Actually, tcp_client and web_tables are very different in how they work… some folks may prefer one or the other.

Something I need to be really, really clear about with web_tables:

The real-time repeater activity uses the Motorola IPSC “Repeater Call Monitor” stuff. It’s not making guesses at what repeaters are doing, it is reporting what repeaters tell it they’re doing. It can lose an update packet, and I do not have all of RCM decoded, so some unexpected things still happen. But for example, if a repeater is listed as “repeating”, it’s because that repeater said it was repeating. Similarly, for those who will ask when HBlink will have a version — HBP, to my knowledge, does NOT have an RCM-like facility, so there will never be a feature just like this for HBP unless it gets a baked in facility like RCM in IPSC. I can think of some alternatives that are close… like piping MMDVM’s log over and using it to populate — that’s actually not too bad of a way to do it… But they’re still very different solutions to the same general end…. and it’l take a while.

On Jul 20, 2017, at 1:52 PM, Steve N4IRS <szingman@...> wrote:

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:
YES!

Got it, the pointer was when you said it should be getting the config.

You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!

All OK now, thanks, really nice page, but I'm utilitarian anyway.

Great stuff Cort.

73,
Peter






Cort Buffington
785-865-7206


Peter M0NWI
 

HI,


Have either of you got Web_tables.py running as a Daemon, I've tried but it it just seems to stop after it's attempted to load the .csv files, works normally when run from the command line.

I've switched on Debug logging, and below is all I get;


Starting system web_tables daemon:.
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' is current, not downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' is current, not downloaded


To run it I'm using a hacked version of the rc.bridge script, which seems OK when used with playback, rcm etc.


73,

Peter



From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 20:30
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
Actually, tcp_client and web_tables are very different in how they work… some folks may prefer one or the other.

Something I need to be really, really clear about with web_tables:

The real-time repeater activity uses the Motorola IPSC “Repeater Call Monitor” stuff. It’s not making guesses at what repeaters are doing, it is reporting what repeaters tell it they’re doing. It can lose an update packet, and I do not have all of RCM decoded, so some unexpected things still happen. But for example, if a repeater is listed as “repeating”, it’s because that repeater said it was repeating. Similarly, for those who will ask when HBlink will have a version — HBP, to my knowledge, does NOT have an RCM-like facility, so there will never be a feature just like this for HBP unless it gets a baked in facility like RCM in IPSC. I can think of some alternatives that are close… like piping MMDVM’s log over and using it to populate — that’s actually not too bad of a way to do it… But they’re still very different solutions to the same general end…. and it’l take a while.

On Jul 20, 2017, at 1:52 PM, Steve N4IRS <szingman@...> wrote:

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:
YES!

Got it, the pointer was when you said it should be getting the config.

You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!

All OK now, thanks, really nice page, but I'm utilitarian anyway.

Great stuff Cort.

73,
Peter






Cort Buffington
785-865-7206


Steve N4IRS
 

Peter,
Make sure the working directory is set.
This SHOULD work.

Steve

[Unit]
Description=Web Tables
# Description=Place this file in /lib/systemd/system
# 07/13/2017

[Service]
Type=simple
StandardOutput=null
WorkingDirectory=/where/python script/lives
Restart=always
RestartSec=3
ExecStart=/where/python script/lives/python_script.py
ExecReload=/bin/kill -2 $MAINPID
KillMode=process

[Install]
WantedBy=network-online.target


On 7/24/2017 12:24 PM, Peter M0NWI wrote:

HI,


Have either of you got Web_tables.py running as a Daemon, I've tried but it it just seems to stop after it's attempted to load the .csv files, works normally when run from the command line.

I've switched on Debug logging, and below is all I get;


Starting system web_tables daemon:.
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' is current, not downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' is current, not downloaded


To run it I'm using a hacked version of the rc.bridge script, which seems OK when used with playback, rcm etc.


73,

Peter



From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 20:30
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
Actually, tcp_client and web_tables are very different in how they work… some folks may prefer one or the other.

Something I need to be really, really clear about with web_tables:

The real-time repeater activity uses the Motorola IPSC “Repeater Call Monitor” stuff. It’s not making guesses at what repeaters are doing, it is reporting what repeaters tell it they’re doing. It can lose an update packet, and I do not have all of RCM decoded, so some unexpected things still happen. But for example, if a repeater is listed as “repeating”, it’s because that repeater said it was repeating. Similarly, for those who will ask when HBlink will have a version — HBP, to my knowledge, does NOT have an RCM-like facility, so there will never be a feature just like this for HBP unless it gets a baked in facility like RCM in IPSC. I can think of some alternatives that are close… like piping MMDVM’s log over and using it to populate — that’s actually not too bad of a way to do it… But they’re still very different solutions to the same general end…. and it’l take a while.

On Jul 20, 2017, at 1:52 PM, Steve N4IRS <szingman@...> wrote:

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:
YES!

Got it, the pointer was when you said it should be getting the config.

You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!

All OK now, thanks, really nice page, but I'm utilitarian anyway.

Great stuff Cort.

73,
Peter






Cort Buffington
785-865-7206



Cort N0MJS <n0mjs@...>
 

I’m old-school BSD…. how I run things automatically and in the background is at least 15 years out of date. I’d recommend following Steve’s advice.

On Jul 24, 2017, at 11:30 AM, Steve N4IRS <szingman@...> wrote:

Peter,
Make sure the working directory is set.
This SHOULD work.

Steve

[Unit]
Description=Web Tables
# Description=Place this file in /lib/systemd/system
# 07/13/2017

[Service]
Type=simple
StandardOutput=null
WorkingDirectory=/where/python script/lives
Restart=always
RestartSec=3
ExecStart=/where/python script/lives/python_script.py 
ExecReload=/bin/kill -2 $MAINPID
KillMode=process

[Install]
WantedBy=network-online.target


On 7/24/2017 12:24 PM, Peter M0NWI wrote:
HI,

Have either of you got Web_tables.py running as a Daemon, I've tried but it it just seems to stop after it's attempted to load the .csv files, works normally when run from the command line.

I've switched on Debug logging, and below is all I get;

Starting system web_tables daemon:.
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' is current, not downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' is current, not downloaded

To run it I'm using a hacked version of the rc.bridge script, which seems OK when used with playback, rcm etc.

73,
Peter


From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 20:30
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
Actually, tcp_client and web_tables are very different in how they work… some folks may prefer one or the other.

Something I need to be really, really clear about with web_tables:

The real-time repeater activity uses the Motorola IPSC “Repeater Call Monitor” stuff. It’s not making guesses at what repeaters are doing, it is reporting what repeaters tell it they’re doing. It can lose an update packet, and I do not have all of RCM decoded, so some unexpected things still happen. But for example, if a repeater is listed as “repeating”, it’s because that repeater said it was repeating. Similarly, for those who will ask when HBlink will have a version — HBP, to my knowledge, does NOT have an RCM-like facility, so there will never be a feature just like this for HBP unless it gets a baked in facility like RCM in IPSC. I can think of some alternatives that are close… like piping MMDVM’s log over and using it to populate — that’s actually not too bad of a way to do it… But they’re still very different solutions to the same general end…. and it’l take a while.

On Jul 20, 2017, at 1:52 PM, Steve N4IRS <szingman@...> wrote:

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:
YES!

Got it, the pointer was when you said it should be getting the config.

You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!

All OK now, thanks, really nice page, but I'm utilitarian anyway.

Great stuff Cort.

73,
Peter






Cort Buffington
785-865-7206



--
Cort Buffington
H: +1-785-813-1501
M: +1-785-865-7206






Steve N4IRS
 

I usually start with simple and move to systemd after testing. You can do this instead.

cd /opt/Web_tables
nohup python Web_tables.py &>/dev/null &

Steve


On 7/24/2017 12:24 PM, Peter M0NWI wrote:

HI,


Have either of you got Web_tables.py running as a Daemon, I've tried but it it just seems to stop after it's attempted to load the .csv files, works normally when run from the command line.

I've switched on Debug logging, and below is all I get;


Starting system web_tables daemon:.
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' is current, not downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' is current, not downloaded


To run it I'm using a hacked version of the rc.bridge script, which seems OK when used with playback, rcm etc.


73,

Peter



From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 20:30
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
Actually, tcp_client and web_tables are very different in how they work… some folks may prefer one or the other.

Something I need to be really, really clear about with web_tables:

The real-time repeater activity uses the Motorola IPSC “Repeater Call Monitor” stuff. It’s not making guesses at what repeaters are doing, it is reporting what repeaters tell it they’re doing. It can lose an update packet, and I do not have all of RCM decoded, so some unexpected things still happen. But for example, if a repeater is listed as “repeating”, it’s because that repeater said it was repeating. Similarly, for those who will ask when HBlink will have a version — HBP, to my knowledge, does NOT have an RCM-like facility, so there will never be a feature just like this for HBP unless it gets a baked in facility like RCM in IPSC. I can think of some alternatives that are close… like piping MMDVM’s log over and using it to populate — that’s actually not too bad of a way to do it… But they’re still very different solutions to the same general end…. and it’l take a while.

On Jul 20, 2017, at 1:52 PM, Steve N4IRS <szingman@...> wrote:

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:
YES!

Got it, the pointer was when you said it should be getting the config.

You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!

All OK now, thanks, really nice page, but I'm utilitarian anyway.

Great stuff Cort.

73,
Peter






Cort Buffington
785-865-7206



Peter M0NWI
 

Thanks Steve,


I'm a bit like Cort, I started with Redhat 6.1 back in '99 and never really moved forward to that modern systemd stuff 😊  


Your systemd script worked a charm and I've got it started as a service now!



Cort,


Another question if I may, how is the order of the DMRLink table for display sorted, it doesn't seem random as it always comes out in the same order, but weirdly isn't the order of the dmrlink.cfg, not alphabetic?


73,

Peter



From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Steve N4IRS <szingman@...>
Sent: 24 July 2017 18:17
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
I usually start with simple and move to systemd after testing. You can do this instead.

cd /opt/Web_tables
nohup python Web_tables.py &>/dev/null &

Steve


On 7/24/2017 12:24 PM, Peter M0NWI wrote:

HI,


Have either of you got Web_tables.py running as a Daemon, I've tried but it it just seems to stop after it's attempted to load the .csv files, works normally when run from the command line.

I've switched on Debug logging, and below is all I get;


Starting system web_tables daemon:.
INFO:root:ID ALIAS MAPPER: 'peer_ids.csv' is current, not downloaded
INFO:root:ID ALIAS MAPPER: 'subscriber_ids.csv' is current, not downloaded


To run it I'm using a hacked version of the rc.bridge script, which seems OK when used with playback, rcm etc.


73,

Peter



From: DVSwitch@groups.io <DVSwitch@groups.io> on behalf of Cort N0MJS <n0mjs@...>
Sent: 20 July 2017 20:30
To: DVSwitch@groups.io
Subject: Re: [DVSwitch] DMRmonitor setup
 
Actually, tcp_client and web_tables are very different in how they work… some folks may prefer one or the other.

Something I need to be really, really clear about with web_tables:

The real-time repeater activity uses the Motorola IPSC “Repeater Call Monitor” stuff. It’s not making guesses at what repeaters are doing, it is reporting what repeaters tell it they’re doing. It can lose an update packet, and I do not have all of RCM decoded, so some unexpected things still happen. But for example, if a repeater is listed as “repeating”, it’s because that repeater said it was repeating. Similarly, for those who will ask when HBlink will have a version — HBP, to my knowledge, does NOT have an RCM-like facility, so there will never be a feature just like this for HBP unless it gets a baked in facility like RCM in IPSC. I can think of some alternatives that are close… like piping MMDVM’s log over and using it to populate — that’s actually not too bad of a way to do it… But they’re still very different solutions to the same general end…. and it’l take a while.

On Jul 20, 2017, at 1:52 PM, Steve N4IRS <szingman@...> wrote:

Running current code now too.

On 7/20/2017 2:33 PM, Peter M0NWI wrote:
YES!

Got it, the pointer was when you said it should be getting the config.

You'd hardcoded 9000, and I'd not opened that port back into the cloud host firewall!!

All OK now, thanks, really nice page, but I'm utilitarian anyway.

Great stuff Cort.

73,
Peter






Cort Buffington
785-865-7206



Cort N0MJS <n0mjs@...>
 

Ah! Great question…. it’s not sorted. It’s all in python dictionaries, which have no ordering to them. They’re a hashed type, which makes searching FAST, but also leaves them unordered. And, it’s nested dictionaries. As long as the “outer” dictionary doesn’t change, the order will be the same, but when you add another system, it could all change.

On Jul 25, 2017, at 4:29 AM, Peter M0NWI <peter-martin@...> wrote:


Cort,


Another question if I may, how is the order of the DMRLink table for display sorted, it doesn't seem random as it always comes out in the same order, but weirdly isn't the order of the dmrlink.cfg, not alphabetic?


73,

Peter




--
Cort Buffington
H: +1-785-813-1501
M: +1-785-865-7206