1
0
mirror of https://github.com/craigerl/aprsd.git synced 2024-12-20 08:31:11 -05:00
Commit Graph

592 Commits

Author SHA1 Message Date
576301ca20 Update Makefile for dev vs. run environments
This patch updates the Makefile to allow for creating
development vs runtime python virtual environments.

If you only want to run aprsd commands
make run

If you want to work on aprsd code
make dev
2022-12-07 14:19:42 -05:00
6d34d9c514 Added pyopenssl for https for webchat
In order for webchat to support fetching the GPS location in the
browser, the conenction from the browser needs to be https://
2022-12-07 14:03:25 -05:00
deeee71f8f
Merge pull request #103 from craigerl/user-agents
change from device-detector to user-agents
2022-12-07 13:59:26 -05:00
f2b1ad35f9 change from device-detector to user-agents
the device detector was taking 1 minute on a raspi to parse out the
user-agent string from the browser.  user-agents takes 2 seconds,
which still isn't great, but 'doable' for the webchat interface.
2022-12-07 13:40:08 -05:00
1e65af2dea
Merge pull request #102 from craigerl/remove-twine
Remove twine from dev-requirements
2022-12-05 17:10:27 -05:00
83370689b9 Remove twine from dev-requirements
twine is only used for building a distribution and uploading
to pypi.  Unfortunately it has a dependency that pulls in
cryptography which is painful on rpi systems as it requires
the latest version of rustc and cargo.
2022-12-05 16:13:39 -05:00
e4f93a2ab4 Update to latest Makefile.venv
This patch updates the Makefile.venv to the latest upstream.
2022-12-02 17:08:10 -05:00
acecba27e8
Merge pull request #101 from craigerl/webchat_mobile
Add support for mobile browsers for webchat
2022-12-02 17:06:17 -05:00
51b80cd4ea Refactored threads a bit
This patch refactors the rx threads a bit to reuse some code
responsible for processing acks when packets are received.

This also eliminates a custom thread in the webchat command for
processing received packets now that there is common code in the base
classes.
2022-12-02 16:26:48 -05:00
480094b0d4 Mark packets as acked in MsgTracker
This patch updates webchat to track the msgs recieved as tracked
and acked, so the TX thread can stop trying to send.
2022-12-02 14:58:32 -05:00
726c8f4f2f remove dev setting for template 2022-12-02 14:20:52 -05:00
ee96108324 Add GPS beacon to mobile page
This patch adds the GPS beacon button to the mobile layout.
2022-11-30 15:17:28 -05:00
5067f745ca Allow werkzeug for admin interface.
This patch enables werkzeug for socketio for the admin interface
2022-11-30 14:31:44 -05:00
98fe9daac5 Allow werkzeug for admin interface.
This patch enables werkzeug for socketio for the admin interface
2022-11-30 14:28:31 -05:00
f9e7195e25 Add support for mobile browsers for webchat
This patch adds initial support for changing the UI for webchat
based if the browser is on a mobile device.
2022-11-30 14:14:51 -05:00
44696fbc56 Ignore callsign case while processing packets
This patch fixes an issue where aprsd was deciding if it was
supposed to process a packet destined for itself or not.  It was
making a case sensitive comparison.  This patch makes that comparison
case insensitive for the callsign itself.
2022-11-30 13:57:25 -05:00
78329f79f4
Merge pull request #100 from craigerl/webchat_gps
Send GPS Beacon from webchat interface
2022-11-30 11:25:34 -05:00
5add0f958d remove linux/arm/v7 for official builds for now 2022-11-26 18:34:32 -05:00
d40927d1c3 added workflow for building specific version 2022-11-26 18:28:14 -05:00
d5e56b553e Allow passing in version to the Dockerfile
This patch allows setting the version from pypi.org to use
when building the container.

Currently defaults to 2.5.9.
2022-11-26 18:23:07 -05:00
1a1d00242b Send GPS Beacon from webchat interface
This patchset allow getting the GPS coordinates from the browser's
geolocation API (which can be denied by user), then send's the GPS
coordinates to aprsd via socketio and then aprsd sends a beacon.

This allows the APRS network to know the location of the person running
the webchat app via browser so packets can get routed back to it.
2022-11-25 13:25:09 -05:00
19f804bf68
Merge pull request #99 from craigerl/remove-email-validation
Remove email validation
2022-11-25 11:38:13 -05:00
4111d16aaf specify Dockerfile-dev 2022-11-25 11:21:10 -05:00
d1a0a988f2 Fixed build.sh
This patch fixes passing the branch to the build script
2022-11-25 10:05:16 -05:00
d9b39734e6 Build on the source not released aprsd 2022-11-25 10:03:34 -05:00
d4bf0f1e3c Remove email validation
The package/library being used for email validation is basically
defunct now.
2022-11-25 09:29:41 -05:00
117f81f55f Add support for building linux/arm/v7
This patch adds support for the github workflow for building
the raspi architecture
2022-11-24 09:44:32 -05:00
b41e4a9ef3 Remove python 3.7 from docker build github
This patch removes the testing of python 3.7 during the
github action workflow for building the docker image
2022-11-23 15:41:27 -05:00
e66dc344b8
Merge pull request #91 from craigerl/small_refactor
Small refactor
2022-11-23 13:33:23 -05:00
5acddbd466 Fixed failing unit tests
This patch re-adds in the pytz lib for the generic time plugins.
2022-11-23 13:28:38 -05:00
17e784629e change github workflow
remove python 3.7
2022-11-23 13:06:33 -05:00
528bdb99e7 Removed TimeOpenCageDataPlugin
This patch removes the TimeOpenCageDataPlugin as it's been superceded
by the aprsd-timeopencage-plugin
2022-11-23 13:02:46 -05:00
fc1ca52593 Dump config with aprsd dev test-plugin
This patch adds the dumping of the config read for the
aprsd dev test-plugin command
2022-11-23 13:02:46 -05:00
075078b520 Updated requirements 2022-11-23 13:02:44 -05:00
7d970cbe70 Got webchat working with KISS tcp
This patch reworks the KISS client to get rid of
aioax25 as it was too difficult to work with due to
heavy use of asyncio.

Switched to the kiss3 pypi library.
2022-11-23 13:01:43 -05:00
d717a22717 Added click auto_envvar_prefix
This allows setting environment variables that are
prefixed with APRSD_
2022-11-23 13:01:06 -05:00
9b0c626b59 Update aprsd thread base class to use queue
This patch updates the main aprsd threads class to use
a shared queue to notify all aprsd thread classes they need
to exit.  This ensures any closing down of sockets, etc happens from
inside the context of the thread itself, not the MainThread that
calls stop.
2022-11-23 13:01:06 -05:00
967959e7b3 Update packets to use wrapt
This patch updates the aprsd/packets.py to use wrapt for it's method
lock synchornization.
2022-11-23 13:01:06 -05:00
e5f60b5ce1 Add remving existing requirements
This patch updates the Makefile to do an rm on the requirements.txt
when updating the requirements files.
2022-11-23 13:01:06 -05:00
2ce50d8861 Try sending raw APRSFrames to aioax25
This seems to work sending out, but still getting
third-party dropped packets as response from the local repeater.
2022-11-23 13:01:06 -05:00
ad79ed1261 Use new aprsd.callsign as the main callsign
This patch changes how aprsd identifies itself when connected to
any client, which is not relying on the login for each client.
There are 3 supported clients currently
aprsis,
tcpkiss
serialkiss.

Each client has their own potential login/callsign to connect
to the remote.  This patch tells aprsd to use the new config option
aprsd.callsign as a means to identify itself.  It will accept
packets as <aprsd.callsign> and reply as <aprsd.callsign> regardless
of which client object is being used to connect to the remote.

Note: this breaks backwards compatibility.  This patch now requires
the new config option
aprsd:
  callsign: <callsign>
2022-11-23 13:01:01 -05:00
5f28788180 Fixed access to threads refactor 2022-11-23 13:00:37 -05:00
585d55f10d Added webchat command
This patch adds the new aprsd webchat command which shows
a new webpage that allows you to aprsd chat with multiple
callsigns
2022-11-23 13:00:36 -05:00
1ccb2f7695 Moved log.py to logging
Also renamed logging/logging.py to logging/rich.py
2022-11-23 13:00:36 -05:00
a62843920a Moved trace.py to utils
This patch moves trace.py to the utils directory
2022-11-23 13:00:36 -05:00
29b84b453b Fixed pep8 errors 2022-11-23 13:00:36 -05:00
347a6d69f7 Refactored threads.py
This patch creates a threads directory and separates out
the contents of threads.py into separate files in the
threads directory to make it easier to find and maintain.
2022-11-23 13:00:36 -05:00
bed060f1c5 Refactor utils to directory
This patch moves the utils.py to utils/__init__.py
and fuzzyclock.py to utils
and separates the ring_buffer to it's own file in utils
2022-11-23 13:00:36 -05:00
ab6583666f remove arm build for now 2022-11-04 14:06:03 -04:00
3580425ca3 Added rustc and cargo to Dockerfile
This is an attempt to fix the failing docker image build for
linux/arm/v7
2022-11-04 11:34:27 -04:00