1
0
mirror of https://github.com/craigerl/aprsd.git synced 2025-04-22 19:28:38 -04:00
Commit Graph

1135 Commits

Author SHA1 Message Date
df14eb8f28 updated workflow 2025-01-06 17:14:01 -05:00
fd74405b5f Updated README.md 2025-01-06 17:13:40 -05:00
ec1adf4182 fixed list-plugins
This patch fixes the list-plugins and list-extensions.
Pypi changed their search page to require javascript, which
breaks python scripts....
2025-01-03 17:16:26 -05:00
b1a830d54e Changed README.rst -> README.md 2025-01-03 12:29:31 -05:00
72d068c0b8 Changed to ruff
This patch changes to the ruff linter.  SO MUCH quicker.
Removed grey and mypy as well.
2024-12-20 22:00:54 -05:00
30d1eb57dd Added new KeepAliveCollector
This new collector allows external extensions and plugins to
get callbacks during the keepalive thread runs.  Every 60 seconds
the keepalive thread will do some checks and log some entries in the
logfile to keep the user/admin aware of the state of aprsd itself.
2024-12-18 16:55:26 -05:00
bbdbb9aba1 Include haversine library
This patch changes the geopy to haversine library for logging
packet distances.  haversine is quite a bit lighter than geopy.
2024-12-11 16:25:02 -05:00
3bba8a19da Removed LocationPlugin from aprsd core
This eliminates the requirement for geopy library and all it's deps.

The new location for the LocationPlugin is here:

https://github.com/hemna/aprsd-location-plugin
2024-12-11 15:55:16 -05:00
f0c02606eb Removed more email references. 2024-12-11 15:55:16 -05:00
fcd1629fde removed email reference
From the list-plugins command
2024-12-11 15:55:16 -05:00
ae28dbb0e6 Fixed make clean
Just changed the order of things to clean up.
2024-12-11 15:55:16 -05:00
0880a356e6 Remove email plugin
This patch removes the email plugin from APRSD core.  The new
home for email plugin is here:

http://github.com/hemna/aprsd-email-plugin.git
2024-12-11 15:55:15 -05:00
8f8887f0e4 Remove webchat as a built in command.
Webchat will now be an extension that can be installed.
the extension is here:
https://github.com/hemna/aprsd-webchat-extension

Install it from git or pypi.
2024-12-11 15:55:15 -05:00
c48ff8dfd4 Migrate admin web out of aprsd.
This patch removes the admin command out of aprsd proper.
The admin interface will be an aprsd extension called
aprsd-admin-extension.

This is the start of the effort to trim down the base of APRSD
and the commands to server, healthcheck, list_plugins, list_extensions.

This will reduce the number of required packages that APRSD core needs.
This is useful for others using APRSD as their base to their
applications.
2024-12-11 15:55:15 -05:00
caa4bb8bd0 Update Makefile
to help clean.
2024-12-11 15:54:49 -05:00
bc709b377c Update Changelog for 3.4.4 2024-12-06 09:17:44 -05:00
63bcd4139b Fixed some pep8 failures 2024-12-06 09:16:21 -05:00
3c058f3e7b Added new acked property to the core Packet
This is intended to be a flag for message packets that are sent out.
When we get an ack for that sent packet the acked should be changed
to True.
2024-12-02 20:11:43 -05:00
0d8a1ac334 Update requirements.dev 2024-12-01 21:29:13 -05:00
db73a540ba Remove dataclasses from requirements
dataclasses are no part of python proper since python 2.7 and >.
2024-12-01 21:28:31 -05:00
7fb0c7454e Update healthcheck
Check for keepalive with connection_keepalive to support more than
1 of the client types.
2024-11-27 20:53:53 -05:00
d94a3e7b90 Added __contains__ to threadlist
This patch adds the __contains__ to the APRSDThreadList
class so we can do things like

if name in APRSDThreadList:
  # do something
2024-11-27 11:40:53 -05:00
d4ae72608b Fixed webchat packets without msgNo
This patch makes a fix in the webchat UI for packets that
don't have a msgNo in the RX'd packets.  Previously the packets
would just show up as a dupe of the previous RX'd packet from
the same callsign.  Webchat UI will now properly show the message
by creating a fake msgNo value based on the contents of the RX'd packet
from_call+addressee+message_text
2024-11-26 19:48:50 -05:00
f66b96288f Fixed issue with packet object and prepare()
If any part of the code had a packet object and called prepare()
on it, it would create a msgNo if it wasn't set.  Sometimes we
get packets on the wire/RF that don't have a msgNo, so adding one
locally is wrong.   We should ONLY create a msgNo on a packet that
is destined for transmission.

This patch ensures that even if prepare() is called, that only
packets that are created locally for TX get a msgNo unless it
already exists from RX'd packets.
2024-11-26 16:52:39 -05:00
3a8b8f26dd Fixed webchat popovers not working.
We have to call reload_popovers() every time we insert
new chat bubbles or the popovers on the new bubbles won't work.
2024-11-26 12:59:37 -05:00
8529f1f8d1 Updated keepalive thread to report client
This patch updates the keepalive thread and the
aprsis client and kiss client to report keepalive.
2024-11-26 12:35:36 -05:00
a17b80ddd8 Fixed issue not processing null msg ids
Fixed a problem where we weren't sending packets with no msg id
to process.
2024-11-26 12:31:33 -05:00
e8ae3807db Webchat: Don't automatically fetch location KISS
this patch changes webchat to not call REPEAT automatically to fetch the
location of a remote callsign if the client is on kiss.
Only fetch the location if the user clicks the button to fetch the
location.
2024-11-26 10:00:59 -05:00
8f3da961e7 Update RX Packet dupe checking
Lots of APRS messages don't have message ids in the packet.  This
prevents packet.msgNo from having a value.  so when we look the packet
up in the packet_list, the packet key has a None for a value for the
msgNo portion of the key.  This results in every packet after the first
from that callsign that doesn't have a msg id, will be marked as a dupe
and will never be processed.

This patch checks to see if msgNo is None.  If it is, then just
mark the packet as never being seen and pass it on the chain to
be processed.  This also means that there should never be an Ack
sent for those packets that don't container a msgNo value.
2024-11-25 17:17:32 -05:00
aba5bb03a2 Fix call in kiss consumer
Fixes a log entry in the kiss client consumer
2024-11-25 17:10:20 -05:00
3e488db3d7 Properly report TCPKISS connection
This patch updates the KISS client to properly report the
connection as being valid or failed.
2024-11-25 14:37:49 -05:00
be6357a552 Put safety checks around the timeago for keepalive
If the client isn't running yet, the keepalive date will be
None, so we need a check around it before running timeago on it.
2024-11-23 09:15:30 -05:00
98a96cbe34 Make sure to sleep(1) in the main RX thread
In case the consumer can't run, we need to sleep in the
main loop of the RX thread in case we are paused.
2024-11-23 09:14:43 -05:00
76d275db9c Added pause_all, unpause_all in threadlist
This patch adds methods for pausing and unpausing all threads in
the APRSDThreadList.
2024-11-23 09:13:35 -05:00
505565d3a6 Added client_exists() for client factory
This patch adds a method in the factory to detect if we have
created the client yet or not.
2024-11-23 09:12:11 -05:00
95094b874c Added APRSDThread pause/unpause capability
This patch adds the logical ability to pause and unpause a thread.
This enables the base class decide to call the main loop() method or
not.  If the thread is paused, it will simply call sleep for a second
and then continue.  Only when the thread is unpaused will the main
loop() get called again.
2024-11-22 10:45:22 -05:00
e99c906fed No reason to create the client in init
The RX thread shouldn't create the client in init.  It should only be
checked in the loop prior to calling consumer
2024-11-21 20:35:42 -05:00
1eaa4b8e10 Fixed pep8 failure on counter.py
this patch fixes small pep8 issues on the updated
counter.py
2024-11-21 09:08:57 -05:00
c82e9ba597 Fixed broken unit tests
This patch fixes some broken unit tests with the aprsis client.
2024-11-21 09:01:49 -05:00
c372e1a1e9
Merge pull request #182 from Novfensec/Novfensec-patch-1
Update counter.py
2024-11-21 08:07:09 -05:00
Kartavya Shukla
e7d8947810
Update counter.py 2024-11-21 13:38:30 +05:30
1c50c39e61 Updated server client checks
Moved the client settings and configuration checks prior to
trying to start the client.
2024-11-20 18:01:21 -05:00
06c1fb985e Update Client to report login status
This patch updates the aprsd client base class to report login succes
and any error string associated with a login failure.  Also exposes
the login status so anyone using the client to check for login failure.

Update webchat, listen, server commands to check for initial login
failures and exit if the login failed.  No reason to continue on
if the login fails.
2024-11-20 15:55:02 -05:00
9f7d169c18 Update WebChat
This patch changes the location string to include Compass rose
instead of bearing degrees.  Also adds the time timeago package
for calculating how much time since the beacon to format to something
like "12 days ago".
2024-11-20 11:47:56 -05:00
Craig Lamparter
d42638efe3
Sending message to new callsign displays in an active tab 2024-11-19 10:31:05 -08:00
f0b99564d1 Fixes for webchat UI.
Fixed a few issues with webchat UI.  When sending a message,
make sure the recipient tab is selected after sending.
Also, don't reset the path selection after sending a message.
2024-11-18 14:29:32 -05:00
257fa0db7d Update requirements 2024-11-18 11:07:47 -05:00
192726ee51
Merge pull request #177 from afourney/option-to-disable-help
Added an option to disable the loading of the help plugin.
2024-11-14 15:06:37 -05:00
c3df974004 Update utils.trace
The trace call now include the filename from where the call was
made as well as the qualname for the function/method being called
so you can see from the logs what class the call is from
2024-11-13 21:18:08 -05:00
Adam Fourney
24714923be Addressing comments in PR. 2024-11-11 20:49:23 -08:00