Commit Graph

176 Commits

Author SHA1 Message Date
Cort Buffington
ec9c20d5ee *NOT_BACKWARD_COMPATIBLE* changes
Changes to the REPORTS section of the config and dmrlink.py to pave the
way for more flexible reporting types.
2015-06-07 15:46:29 -05:00
Cort Buffington
d2a73a044e log "ID, IP:PORT" instead of just "ID" 2015-06-07 13:19:32 -05:00
Cort Buffington
ea0188002a Add IP:Port to logging for some messages 2015-06-07 11:47:07 -05:00
Cort Buffington
29789acfd9 Internal Diagnostics (Timing)
Added some stuff for measuring timing. Must be uncommented to work.
2015-05-28 09:58:06 -05:00
Cort Buffington
707d9cc1f6 Internal Diagnostics
Added pieces for timing run times. No functional change unless you go
uncomment stuff to turn it on.
2015-05-28 09:42:58 -05:00
Cort Buffington
e2f596f311 DNS resolution
use gethostbyname when we parse the config, once, rather than leave it
to twisted to do when we send packets.
2015-05-21 09:45:24 -05:00
Cort Buffington
dd4dee21c4 Move gethostbyname
don’t rely on Twisted to do this on packet write, just translate once
when we read the config.
2015-05-21 09:39:42 -05:00
David Kierzkowski
d83fbba277 fix exit program via CTRL-C 2015-04-10 01:41:44 -04:00
Cort Buffington
b9b21ebebf Begin AMBE Data Dump 2015-03-24 11:06:42 -05:00
Cort Buffington
5c27ce4d52 See last two changes (this is a clean-up commit) 2014-12-20 10:05:03 -06:00
Cort Buffington
06c9ed48b4 SEE LAST UPDATE (bug fix from it) 2014-12-20 09:56:15 -06:00
Cort Buffington
16e7d2aaeb send_to_ipsc moved into IPSC class
send_to_ipsc moved into the IPSC class, as well as a new class function
for the single line to write the socket. This allows for inserting a
debug logger line to dump EVERY packet transmitted on a per-IPSC basis.
2014-12-20 09:14:54 -06:00
Cort Buffington
5a5ecb322b IP Interface may be specified now
This is useful when using multiple interfaces and bridge.py is employed
as an application gateway between multiple un-connected networks (like
VPNs to the real world).
2014-10-31 10:30:18 -05:00
Cort Buffington
91a7e773b2 Don't import config for IPSC not enabled 2014-10-06 08:17:39 -05:00
Cort Buffington
e02c03a099 publish data structure to file 2014-10-05 22:11:56 -05:00
Cort Buffington
f2148ab05f Formatting & Documentation 2014-09-05 19:35:37 -05:00
Cort Buffington
549b8d62bb improve unknown packet type debugging 2014-09-05 15:57:08 -05:00
Cort Buffington
a4461d3de1 logger typo 2014-09-05 14:17:29 -05:00
Cort Buffington
fc271cd957 variable typo 2014-09-05 14:15:05 -05:00
Cort Buffington
9a99fa585b Fix variable typo in master_reg_req 2014-09-05 14:13:18 -05:00
Cort Buffington
b13f90f971 fix function name typeos 2014-09-05 14:10:51 -05:00
Cort Buffington
08e5525ae9 INT ID #s instead of HEX 2014-09-05 14:08:23 -05:00
Cort Buffington
eb84cb2589 Move IPCS Maintenance to Functions 2014-09-05 13:57:47 -05:00
Cort Buffington
03fcae42de user integer ID in debugging instead of HEX 2014-09-05 10:16:06 -05:00
Cort Buffington
ce29ce89c4 De-Registration Logs integer ID now 2014-09-05 09:02:59 -05:00
Cort Buffington
bc25da467a Complete Polite Shutdown
DMRlink will now de-register from all peers on a SIGTERM, SIGINT or
SIGQUIT.
2014-09-05 08:56:51 -05:00
Cort Buffington
82d93a759d Added Logger name to config
Now you can configure the name shown in syslog on a per-instance basis.
Handy when you run more than one DMRlink instance on the same machine.
2014-09-05 07:50:49 -05:00
Cort Buffington
6f08f1f2c4 change logger name 2014-09-01 18:58:26 -05:00
Cort Buffington
f0d50c8211 Update Versions/Documentation 2014-08-31 13:18:35 -05:00
Cort Buffington
b22d773e81 NOT FULLY FUNCTIONAL: Backup Bridge
Bridge application that identifies known bridges based on RADIO ID and
does NOT bridge if they are actively connected to an IPSC and MODE byte
shows linking on a timeslot.
2014-08-29 09:05:19 -05:00
Cort Buffington
a89a94dea8 reduce peer_list function logging 2014-08-27 19:43:42 -05:00
Cort Buffington
6c41942aa2 Allow Re-Registration
If a peer “re-registers” we were not updating it’s registration
information. For example, it may have changed it’s MODE byte, or worse,
it’s port number, etc. and we’d have missed it
2014-08-26 08:01:27 -05:00
Cort Buffington
318ccfea78 Improve Syslogging 2014-08-24 15:20:10 -05:00
Cort Buffington
94eb828006 Improve syslogging 2014-08-24 15:19:24 -05:00
Cort Buffington
c84273272c Improve Syslogging 2014-08-24 15:16:30 -05:00
Cort Buffington
536dc73521 Improved syslogging 2014-08-15 11:22:39 -05:00
Cort Buffington
d88f90d0b4 Add cfg configurable report interval 2014-08-15 08:39:52 -05:00
Cort Buffington
8a378fe2c1 More Decoding 2014-08-13 17:14:46 -05:00
Cort Buffington
b587c92431 Fixed MASTER_REG_REPLY_PKT
was all messed up, but somehow worked too much of the time anyway!
2014-05-24 14:58:49 -05:00
Cort Buffington
0b1d190791 Fixed MASTER_REG_REPLY peer calc
Was previously really messed up, but worked some of the time by some
crazy twist of fate.
2014-05-24 14:56:53 -05:00
Cort Buffington
7340309638 Fixed RCM Names 2014-05-18 15:30:11 -05:00
Cort Buffington
d6fafd256a RCM Updates 2014-05-18 15:28:27 -05:00
Cort Buffington
56c66dba5a VERSION 0.2 RELEASE
“Official” 0.2 version. Now has Master support, graceful shutdown, and
a number of stability improvements.
2014-05-17 20:01:26 -05:00
Cort Buffington
d6c22c4721 Graceful Shutdown & De-Reg. Handling 2014-05-17 13:18:45 -05:00
Cort Buffington
ee96c6752e MASTER: Peer List Broadcast Added 2014-05-17 10:53:27 -05:00
Cort Buffington
0be40df13b Master Sup.: Peer List Dist. Added 2014-05-17 10:40:19 -05:00
Cort Buffington
47a2b7db13 Normalized Naming Conventions for peer/peerid 2014-05-16 10:20:21 -05:00
Cort Buffington
e223b26a99 Master Support Useable! 2014-05-16 09:02:45 -05:00
Cort Buffington
b5ce0edbae Master Support/Normalization 2014-05-15 22:21:54 -05:00
Cort Buffington
68d52ee976 Master Support Cleanup
Also fixed lack of decoding of some hex strings in debug logging
function calls.
2014-05-15 17:17:54 -05:00
Cort Buffington
8cbf6c678f MASTER SUPPORT WORKING
Needs cleaned up, don’t count on it to be perfect, how to configure it
isn’t yet documented (or very clean). BUT – it works!
2014-05-14 21:42:31 -05:00
Cort Buffington
bbe299fc60 MASTER SUPPORT WORKING
Master support now works – not very well tested, don’t count on it to
be perfect. Also, configuration for a master isn’t yet documented.
2014-05-14 21:41:20 -05:00
Cort Buffington
8d451abebc Work on Master Support 2014-05-14 20:58:58 -05:00
Cort Buffington
f915131a23 Master Support Partially Working 2014-05-14 19:44:26 -05:00
Cort Buffington
9835c3f317 Master Support 2014-05-14 14:19:31 -05:00
Cort Buffington
134a34f22e Work on Master Support 2014-05-14 14:18:33 -05:00
Cort Buffington
9accbafe68 Work on Master Support 2014-05-13 11:18:44 -05:00
Cort Buffington
10c5c0c1ac Work on Master Support 2014-05-12 21:18:04 -05:00
Cort Buffington
bba5d42511 Work on Master support 2014-05-08 08:39:41 -05:00
Cort Buffington
182fe4f93b Work on Master Support 2014-05-08 08:29:57 -05:00
Cort Buffington
70127c021f Beginning Master Support 2014-05-07 20:03:03 -05:00
Cort Buffington
4cbabc48aa Trim Superfluous Code 2014-04-29 22:00:38 -05:00
Cort Buffington
80114833b1 Update Copyright 2014-04-28 22:07:34 -05:00
Cort Buffington
8cad9ee839 Update Copyright 2014-04-28 22:05:31 -05:00
Cort Buffington
43e11ea19a Removed Class & Inheritance for Unauth IPSCs
Previously, an unauthenticated network used a different class that
subclassed IPSC and overrode the the three functions that affect
authentication. Now, during class instantiation ( with __init__ ), the
set of functions are “aliased” depending on whether or not the IPSC’s
auth flag is set in dmrlink.cfg
2014-04-28 21:42:48 -05:00
Cort Buffington
45455322ce Easier config, just use integer string, no hex coding 2014-04-24 21:57:38 -05:00
Cort Buffington
dbe69bb15e keep-alive packet logging set for debug level 2014-01-21 10:49:13 -06:00
Cort Buffington
620d013e92 Added debug logging for keep-alives 2014-01-21 10:40:52 -06:00
Cort Buffington
98300901cc cfg file note added 2014-01-03 15:03:41 -06:00
Cort Buffington
874b11db7b Daemon Support
Shebangs added to all files expected to be executed, command line
argument for configuration file added (otherwise, it looks for
dmrlink.cfg in the same directory as dmrlink.py) - this divorces it
from the last ties to a shell environment… or at least I think.
2014-01-03 15:01:43 -06:00
Cort Buffington
97246370c5 Official Version V0.1 Release 2014-01-02 11:16:23 -06:00
Cort Buffington
6b4fa3b479 Configuraiton Clean-up 2013-12-22 16:16:10 -06:00
Cort Buffington
b461bc9240 Imported Logger - more config items 2013-12-15 09:45:39 -06:00
Cort Buffington
53d7472fa6 See Detailed Description
Made some changes to better stabilize where dmrlink.py looks for the
csv files… not perfect, but better. Expect more changes.

Have waffled back and forth on how to handle peers we lose contact
with… de-reg for sure, but ignore them, or try forever (until we get a
peer list without them from the master) to re-register with the peer?
Settled on trying forever, but will add code to request a new peer-list
every few hours.
2013-12-13 12:07:18 -06:00
Cort Buffington
878fec4a3e Begin Adding Features to Bridging 2013-12-12 19:59:04 -06:00
Cort Buffington
bf46299a2a re-add accidental deletion. 2013-12-12 18:20:21 -06:00
Cort Buffington
872053d6a5 Continue peer connection improvements 2013-12-12 17:03:00 -06:00
Cort Buffington
f3e2d53d9f Revert to Previous Peer De-registration Behavior
The quandry is what to do with peers that have disappeared for too
long. If we keep trying to re-register, we could be quite busy doing
that for an eternity… but if we de-reg the peer and it comes back in 10
minutes, but, say, never lost the master, we don’t get a peer list for
a LONG time and we don’t get it back then either…. There’s no good
answer right now. Anyone got one?
2013-12-12 16:59:56 -06:00
Cort Buffington
98b12aedd3 Import Simplification
Several imports only imported one function, so I changed them to “from
xxx import yyy”
2013-12-12 16:23:46 -06:00
Cort Buffington
101c627d3f Better Processing of MODE and FLAGS 2013-12-12 16:12:36 -06:00
Cort Buffington
d9cf7c3b8a More MODE and FLAGS additions 2013-12-12 07:50:47 -06:00
Cort Buffington
87260cc56e Peer Flag & Mode Additions 2013-12-12 07:42:56 -06:00
Cort Buffington
bbf5ce5282 See Previous Commit 2013-12-11 20:56:39 -06:00
Cort Buffington
8971bb8aed Added MODE decoding function
Turns out we have to do this in TWO places, when processing the peer
list (or could be peer reg. replies, but I only do it once) AND the
master registration reply. So rather than duplicate the code, I moved
it to a function.
2013-12-11 20:53:55 -06:00
Cort Buffington
8aec3d5078 Fixed the last fix :) 2013-12-11 19:25:19 -06:00
Cort Buffington
d6b948e0d1 Master Mode info (info only) wasn't gathered properly. 2013-12-11 19:10:08 -06:00
Cort Buffington
810e0c8c22 fixed Master information gathering 2013-12-11 19:09:38 -06:00
Cort Buffington
44b3e37142 No real change 2013-12-11 14:50:03 -06:00
Cort Buffington
5b35993159 Change In Peer Processing
Since peers are no-longer de-registered just by missing too many
keep-alives (instead returned to registration phase), there must be a
way to remove a peer that we have in our list(s) that are NOT in new
peer lists from the master. This was added.
2013-12-09 16:48:44 -06:00
Cort Buffington
af7941a484 Code Maturity Clean-Up
moved many of the inline print statements to logger.debug. The code is
solid enough they’re no longer needed.

Also made a couple of minor logic changes:
When a peer misses too-many keep-alives, it doesn’t de-register, it
just goes back to registration attempt until a new peer list is
recieved, or a de-registration is recieved. Also, outstanding
keep-alives are set to 0 when a peer or master exceed max-keep-alives
and return to registration pending.
2013-12-09 16:14:03 -06:00
Cort Buffington
922308bcb3 typo 2013-12-06 07:11:19 -06:00
Cort Buffington
cea2cee20e Minor Clean-Up 2013-12-06 07:00:40 -06:00
Cort Buffington
d356459ad2 minor logging changes... preferences really 2013-12-05 18:46:54 -06:00
Cort Buffington
c3f53b5eb7 Fixed Keep-Alive While Transmitting Issue
repeaters don’t reply to keep alives while they are transmitting.
Changed addes so that when voice packets are received, the keep-alive
monitor is reset for that peer.
2013-12-05 15:20:59 -06:00
Cort Buffington
f84a1a2cc7 Logging Clean-Up 2013-12-03 10:47:08 -06:00
Cort Buffington
aea410ec58 bug fixes after fixing the bugs... 2013-12-01 19:24:50 -06:00
Cort Buffington
6b74cc94b8 Lot's 'O Formatting & Bugs 2013-11-26 16:05:08 -06:00
Cort Buffington
b74b46e3bd Shebang and app notes added... 2013-11-24 22:01:20 -06:00
Cort Buffington
8e78d70f0e THREE PACKET TYPES FIGURED OUT!
0x61, 0x62 and 0x63 have been mostly decoded. Still don’t know what all
of the pieces do, but know what they’re for finally!

This will mean big things for log.py as I figure out the details.
2013-11-23 17:30:12 -06:00
Cort Buffington
94ef04fbea Working with Call Control Packets
I’m very close to figuring these out. Getting them taken care of will
end the clipped transmissions when bridging.
2013-11-22 15:43:47 -06:00