Commit Graph

47 Commits

Author SHA1 Message Date
Cort Buffington 679038face Prepare for Data 2015-05-21 09:39:43 -05:00
Cort Buffington d4b51fd08f Prepare for Dynamic Rule Changes
Change the name of the rules read from the file, then copy it to
“RULES” after processing. This will allow us to modify RULES on the
fly, while keeping the “original” - This is a hook to add dynamic rule
changes.
2015-05-17 11:19:19 -05:00
Cort Buffington b7f6b62993 bridge_rules.py and dmrlink.cfg checking
exit if the IPSCs in dmrlink.cfg (or specified file) don’t match the
IPSCs specified in bridge_rules.py
2015-05-17 08:14:29 -05:00
Cort Buffington e2c47ed6ca Call contention handler reliable
MANY changes to make the call contention handler reliable. I’m ready to
say this works pretty well.
2015-05-14 23:00:19 -05:00
Cort Buffington 3cfc058468 CALL CONTENTION WORKING!
minor cleanup
2015-05-14 09:31:33 -05:00
Cort Buffington 66ae5fa873 Call Contention WORKING!
Not saying we won’t find a problem, but it looks pretty solid right
now!!!
2015-05-13 20:35:18 -05:00
Cort Buffington ffe5a61463 Call Contention Handling
NOT THOROUGHLY TESTED: Code added to avoid bridging when a valid rule
exists, but the target IPSC/TS appears to be busy, either in group
hang-time, or already in a call on the same TGID (not likely).
2015-05-13 12:33:47 -05:00
Cort Buffington 4047e08a7e Call Contention Feature
Working to add a call contention feature that does not bridge into an
IPSC with an active call
2015-05-13 09:40:57 -05: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 648569eb91 TIMESLOT TRANSLATION WORKS! 2014-09-18 20:08:54 -05:00
Cort Buffington 1457d34e21 improve debugging 2014-09-05 16:02:30 -05:00
Cort Buffington 140818bcb2 add debugging 2014-09-05 15:59:55 -05:00
Cort Buffington 4781321c2c Restore from a test 2014-08-31 18:33:45 -05:00
Cort Buffington 7c99a1933a Experimental: Don't Rewrite Peer ID 2014-08-31 18:17:34 -05:00
Cort Buffington f0d50c8211 Update Versions/Documentation 2014-08-31 13:18:35 -05:00
Cort Buffington 59224df788 MANY CHANGES
Bridging works well. Backup and standard are consolidated to one
application, better documentation, bridging rules file greatly
simplified.
2014-08-31 11:27:00 -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 6ab3fa7bc3 Cleaned superfluous "stuff"
Significantly simplified this file.
2014-04-28 22:01:33 -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 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 878fec4a3e Begin Adding Features to Bridging 2013-12-12 19:59:04 -06:00
Cort Buffington 0291bbbd9d minor formatting updates 2013-12-06 06:52:43 -06:00
Cort Buffington e3c330dee0 General Clean-Up 2013-12-03 10:48: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 45da762a38 Work on NAT 2013-11-22 09:23:55 -06:00
Cort Buffington 056e55823e Nat work 2013-11-21 18:50:01 -06:00
Cort Buffington b0175dbbbf NAT Work 2013-11-21 18:38:15 -06:00
Cort Buffington 7a0cedb7cb Multiple - See Extended
Move bridge.py's config information to a separate file.
Provide a sample file for bridge.py (bridge_rules_SAMPLE.py)
Tell peers we're a 3rd party app and repeater monitor.
2013-11-17 18:13:59 -06:00
Cort Buffington 2df282bf50 Work on Repeater Wake-Up 2013-11-14 20:30:20 -06:00
Cort Buffington ff02528f9f Begin work on Repeater Wake-Up 2013-11-14 20:14:17 -06:00
Cort Buffington 48a100f0df Fixed a few more bugs...
AND found some caveats, which will be listed as issues shortly.
2013-11-13 19:07:20 -06:00
Cort Buffington b90ec9b7f4 MAJOR - Data Structure Update
Internal data structure change for how peers are stored. Instead of a
list of dicts, it is now a dict of dicts where the dict key IS the
radio ID, and the Radio ID is no longer stored in the "inner" dict.
This does NOT affect bridge.py or log.py, only dmrlink.py
2013-11-13 16:19:32 -06:00
Cort Buffington 5ee94034d6 System Logger Cleanup
This has gotten messy durring development, so I decided to clean it up
some. The system logger should ONLY be used for internal logging of the
program, not to try and make a "netwatch" out of (for you c-Bridge
users). Please use the log.py module for that type of thing.
2013-11-09 11:33:52 -06:00
Cort Buffington 13157cd4e2 2 Peer Bug Fixed
Fixed a bug where I accidentally over-wrote original packet data when
forwarding to an IPSC peer... making it impossible to bridge a packet
to more than one destination IPSC correctly. Currently, DMRlink is
bridging three IPSCs and transcoding group IDs.
2013-11-09 10:14:39 -06:00
Cort Buffington f3f103fca8 Bridging Additions 2013-11-05 19:40:28 -06:00
Cort Buffington 10f73545ad Bridging Now Works 2013-11-05 19:30:31 -06:00
Cort Buffington 25c9ce23d2 Progress on porting bridge into the new structure 2013-11-05 18:47:18 -06:00
Cort Buffington fc5ec8f170 Progress... 2013-10-31 21:45:57 -05:00
Cort Buffington 6223f582cf Unauthenticate IPSC Bug Fixed
unauthenticated packets were subject to having their hashes stripped
just like other packets. The problem is that they don't have hashes to
strip, so I was throwing away part of the packet. Fixed in log.py,
dmrlink.py and bridge.py
2013-10-30 13:36:45 -05:00
Cort Buffington ccd1eab3aa begin working with RSSI data in log.py 2013-10-29 15:16:48 -05:00
Cort Buffington c1c182f15a Updated copyright 2013-10-29 08:17:50 -05:00
Cort Buffington f5a4674ffe Added License file 2013-10-29 07:16:18 -05:00
Cort Buffington 1331726028 Add first two applications
As of now, dmrlink.py is only a behind the scenes worker... It's just
the base class to take care of link establishment and maintenance.
Applications, such as bridging or logging will now be in their own
files and inherit from dmrlink.py
2013-10-29 07:09:18 -05:00