Commit Graph

47 Commits (3da4eb2d409e395dc5554de3b42516aee64675fd)

Author SHA1 Message Date
Bryan Biedenkapp 3da4eb2d40
REST -> RPC Migration (#84)
11 months ago
Bryan Biedenkapp a2fa303217 reorganize code, move Network class from host into common as its being used more as a generic peer network class; add some warning messaging to the FNE when a peer link or external peer (i.e. intra-FNE connection) drops;
11 months ago
Bryan Biedenkapp 6812029491 Merge branch 'master' into incall_ctrl
11 months ago
Bryan Biedenkapp 64bcb56228 enhance debug logging to incorporate both file and line numbers (when provided by the compiler) and optionally implement LogDebugEx macro to also incorporate the caller identifying the function name; correct LogDebug uses in some cases that should have been LogMessage;
11 months ago
Bryan Biedenkapp 3177d38897 Merge branch 'master' into incall_ctrl
12 months ago
Bryan Biedenkapp 02581f2c3f file cleanups;
12 months ago
Bryan Biedenkapp da5cb6eb7d Merge branch 'master' into incall_ctrl
12 months ago
Bryan Biedenkapp b419c56405 reject U2U voice channel grant for P25, DMR and NXDN if the unit being called isn't registered;
1 year ago
Bryan Biedenkapp 7faa2743e8 handle grant release and end of call TDU for P25;
1 year ago
Bryan Biedenkapp 0b0dc32c94 refactor call rejection to be timer based to reject a call until incoming data drops; correct bug with non-standard MFId's being used for the first LDU1; implement enforced unknown/undefined RID ACL support;
1 year ago
Bryan Biedenkapp 10f3f35131 add destination ID to ICC messages;
1 year ago
Bryan Biedenkapp 59f85c5976 implement in-call control mechanism (this allows the FNE to command a host to stop transmitting if a ACL check fails);
1 year ago
Bryan Biedenkapp cc274ba78e add support to selectively revert to previous logic ignoring affiliation checks;
1 year ago
Bryan Biedenkapp 7736e03aef add ability to disable NON-AUTHORITATIVE log warnings (functionality is made optional as it makes diagnostics easier); remove redundant error message from grant demands;
1 year ago
Bryan Biedenkapp 5a972a671c add some more verbose logging for overflow conditions; correct issue with DMR Tx timer expiring before the call actually ended;
1 year ago
Bryan Biedenkapp 0c247a2b37 make isQueueFull() checking -- less aggressive;
1 year ago
Bryan Biedenkapp 6e9c8837fb add more verbose logging if the modem reports it does not have space for frames and if the local controller queue is full;
1 year ago
Bryan Biedenkapp 89a1d4bde9 peekFrameLength() should abide by mutex locks on txQueue's;
2 years ago
Bryan Biedenkapp 849d54976b fix file spacing;
2 years ago
Bryan Biedenkapp 14b880b708 add some mutex locking for thread safety, ensure addFrame and getFrame cannot happen simultaneously;
2 years ago
Bryan Biedenkapp 3bc8e73560 update modem submodule; fix error with NXDN addFrame calls;
2 years ago
Bryan Biedenkapp 6a040b6bec correct issue with P25 deregistrations always generating a U_REG_CMD instead of only generating a U_REG_CMD for registration timeouts;
2 years ago
Bryan Biedenkapp 882c2564ca correct double spaced formatting of CPP files in common; convert dvmhost to Doxygen documentation format; convert dvmfne to Doxygen documentation format; convert dvmcmd to Doxygen documentation format;
2 years ago
Bryan Biedenkapp eacbc27143 add marking of whether an inbound CAC is long or short; fix issue with short CAC not properly building a puncturing buffer (even tho short CAC doesn't do puncturing, its needed for NXDN convolution); correct CAC getData() return; remove deprecated code causing decoding offsets to be wrong resulting in invalid RCCHs;
2 years ago
Bryan Biedenkapp 51bd9e749d implement CAC long puncturing for NXDN; correct issues with NXDN site information data;
2 years ago
Bryan Biedenkapp cb0500b2e7 treewide: refactor constant variables into proper enumerations where appropriate (this applies to DMR, P25 and NXDN, and may introduce gremlins);
2 years ago
Bryan Biedenkapp 5a3e031247 reset states for DMR and NXDN like previous commit;
2 years ago
Bryan Biedenkapp 1de86458a6 fix DVRS unit deregistration issue (units weren't registered properly during GRP_AFF because DVRS doesn't do the typical U_REG); implement 12-hour timeout for unit registrations (this is only applied if the SU in question has *NOT* had *ANY* activity within 12 hours);
2 years ago
Bryan Biedenkapp 9b828fe7a4 ensure the lookup table thread is named; don't display the not transmitting CC messages unless the test timer is not paused; add aggressive watchdog logging for when timers exceed 1s intervals; split adj. site and affiliation updating into a separate thread (huge adj. site updates could be the cause of main loop processing delays); ensure threads are properly shutdown; increase P25 adj site update timer from 30 seconds to 60 seconds (5 minutes of no updates will now FAIL an adj. site);
2 years ago
Bryan Biedenkapp 01af69a954 make sure the data length for P25 is twice the PDU length; add support to log if a dedicated CC stops transmitting from the host perspective (the logic for this is: is host in appropriate digital mode for CC, is the modem reporting no Tx, has the modem reported its status initially, and is the CC in a running state);
2 years ago
Bryan Biedenkapp e0b6da51fb make the network presence announcment (VC -> CC and CC -> FNE) timing configurable (this value is in seconds); refactor RF channel enumeration, RF channels are now enumerated in their own class ChannelLookup instead of being integrated into AffiliationLookup, this allows the flexibility to update and change channel information at runtime; add support for VC -> CC presence/registration to tell the CC what the REST information is for that VC, this makes the restAddress and restPort entries for the voiceChNo list in the config.yml optional, the only mandatory fields are channelId, channelNo and restPassword;
2 years ago
Bryan Biedenkapp f5a5d83f4b fix potential issue with full group affiliation update;
2 years ago
Bryan Biedenkapp 424c7fa35a fix missed nullptr checks for if networking is disabled;
2 years ago
Bryan Biedenkapp d5ef9a0cb5 little bit of P25 data work (nothing amazing here yet);
2 years ago
Bryan Biedenkapp 690bac453d remove clearBeforeWrite function argument for a lot of control singalling (and some data) cases, this was an old method of clearing the Tx packet queue before creating a frame to ensure it went out really fast, but shouldn't be done anymore, so I'm removing this so no one gets any bright ideas;
2 years ago
Bryan Biedenkapp 856fa98357 make the REST response wait time variable; use a quick response time of 150ms when using REST API during real-time OTA packet processing; add extra logging messages for UDP;
2 years ago
Bryan Biedenkapp 31ca17449d *BEWARE* this commit alters the RPI_ARM cross-compiler and may break things *BEWARE*; implement support for HTTPS SSL REST API configuration; add contrib binary overlay for the RPI_ARM compiler (to add libssl-dev dependences);
2 years ago
Bryan Biedenkapp 4acb60aeff add more plumbing to the CFNE for future use;
2 years ago
Bryan Biedenkapp 9e27875bb8 ensure network is a valid instantiation before trying to run;
2 years ago
Bryan Biedenkapp 5b5efcbe9d add support for network announcement of unit registration, deregistration and group affiliation so the FNE can collate the data more accurately; implement REST API on dvmfne to support retreiving the list of known affiliations; correct a bug in enumeration of RID and TGID lists that could cause weirdness; remote unnecessary "control" RTP payload type and just use a singluar payload type;
2 years ago
Bryan Biedenkapp 5a5104ba2f treewide: perform general refactor of file headers, I've modified the file headers to follow rules from: https://www.kernel.org/doc/html/next/process/license-rules.html, this trims/compresses the file header section a bit reducing the number of lines at the top of every file quite a bit, going forward all new files should follow this new format (if its good enough for the Linux kernel, its good enough for me);
2 years ago
Bryan Biedenkapp bad8129d7d file header updates;
2 years ago
Bryan Biedenkapp d9e2458722 implement support for low-level TCP sockets; deprecate and remove new_unique macro and use appropriate std::make_unique; apply various clang linting;
2 years ago
Bryan Biedenkapp eba4db6104 refactor RTP code slightly to better handle tracking the RTP timestamp properly;
2 years ago
Bryan Biedenkapp 9611af1374 reorganize utility macros from Defines.h to Utils.h; cleanup unneeded includes in some places; cleanup files;
2 years ago
Bryan Biedenkapp 21a4a97ec3 ensure if the network changes the destination ID for P25 and NXDN in-flight the LC data is properly replaced; implement talkgroup mutation by peer on conference bridge FNE;
2 years ago
Bryan Biedenkapp 1379482fcc reorganize entire codebase structure; move common classes, files into a compile time static library; reorganize CMake files to make use of common static library to reduce compile time;
2 years ago

Powered by TurnKey Linux.