Skip to content

Commit

Permalink
update gnssmqttclient for pyspartn>=1.0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
semuadmin committed Nov 18, 2024
1 parent dfe9e90 commit dbac281
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 5 deletions.
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,5 @@
"python.defaultInterpreterPath": "python3",
"modulename": "${workspaceFolderBasename}",
"distname": "${workspaceFolderBasename}",
"moduleversion": "1.1.7"
"moduleversion": "1.1.8"
}
6 changes: 6 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# pygnssutils Release Notes

### RELEASE 1.1.8

ENHANCEMENTS:

1. gnssmqttclient updated to support `pyspartn>=1.0.5` (see [pyspartn Release Notes](https://github.com/semuconsulting/pyspartn/blob/main/RELEASE_NOTES.md) for new functionality).

### RELEASE 1.1.7

ENHANCEMENTS:
Expand Down
4 changes: 2 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ name = "pygnssutils"
authors = [{ name = "semuadmin", email = "[email protected]" }]
maintainers = [{ name = "semuadmin", email = "[email protected]" }]
description = "GNSS Command Line Utilities"
version = "1.1.7"
version = "1.1.8"
license = { file = "LICENSE" }
readme = "README.md"
requires-python = ">=3.9"
Expand Down Expand Up @@ -37,7 +37,7 @@ dependencies = [
"certifi>=2024.0.0",
"paho-mqtt>=1.6.0", # waiting for >=2.0.0 in Conda
"pyserial>=3.5",
"pyspartn>=1.0.4",
"pyspartn>=1.0.5",
"pyubx2>=1.2.48",
]

Expand Down
2 changes: 1 addition & 1 deletion src/pygnssutils/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@
:license: BSD 3-Clause
"""

__version__ = "1.1.7"
__version__ = "1.1.8"
18 changes: 17 additions & 1 deletion src/pygnssutils/gnssmqttclient.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
import paho.mqtt.client as mqtt
from paho.mqtt import __version__ as PAHO_MQTT_VERSION
from pyspartn import (
SPARTNDecryptionError,
SPARTNMessageError,
SPARTNParseError,
SPARTNReader,
Expand All @@ -68,6 +69,8 @@
TIMEOUT = 8
DLGTSPARTN = "SPARTN Configuration"

_global_timetags = {} # for want of a better approach


class GNSSMQTTClient:
"""
Expand Down Expand Up @@ -368,6 +371,7 @@ def on_message(client, userdata, msg): # pylint: disable=unused-argument
:param object msg: SPARTN or UBX message topic content
"""

global _global_timetags
output = userdata["output"]
app = userdata["app"]
msglogger = userdata["logger"]
Expand Down Expand Up @@ -418,13 +422,25 @@ def do_write(raw: bytes, parsed: object):
decode=userdata["decode"],
key=userdata["key"],
basedate=userdata["basedate"],
timetags=_global_timetags,
)
try:
for raw, parsed in spr:
do_write(raw, parsed)
except (SPARTNMessageError, SPARTNParseError, SPARTNStreamError):
_global_timetags = spr.timetags
except (
SPARTNMessageError,
SPARTNParseError,
SPARTNStreamError,
):
parsed = f"MQTT SPARTNParseError {msg.topic} {msg.payload}"
do_write(msg.payload, parsed)
except SPARTNDecryptionError:
parsed = (
f"MQTT SPARTNDecryptionError - check decryption key and basedate"
f" {msg.topic} {msg.payload}"
)
do_write(msg.payload, parsed)

@staticmethod
def on_error(userdata: dict, err: object):
Expand Down

0 comments on commit dbac281

Please sign in to comment.