-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
python/its-vehicle: new client #114
python/its-vehicle: new client #114
Conversation
c07acba
to
d5772ab
Compare
d5772ab
to
9a61bce
Compare
@Hugues360 I accidentally left a little debug message, so I removed it and repushed; sorry or the mess... |
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
... and crudely instanciate it from main() while waiting for a better loop management... All fields in a GNSS report are optional but the timestamp the report was generated at (although a report with only the timestamp would be very useless), as gspd explicitly states that all fields are optional. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Not all GNSS devices trigger gpsd to emit GST or ATT messages, but when they do, there are interesting data in there that we want to make available for enhanced reporting (esp. the acceleration, the error ellipse...). Even when those messages are emitted, there is still no guarantee that any of the fields be present at all, as gpsd explicitly documents that all fields are optional, so be prepared for that. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
... which is responsible for: - gathering GNSS reports, - assembling proper ITS messages (depending on what kind of client it is), - sending those messages to the MQTT broker(s), - subscribing to the area of interest based on the current location, - mirroring those messages to the local borker (if any), - logging and tracking timestamps for MQTT messages that are sent and received. (most of that to come in followup commits). Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
We currently only properly cleanup upon receiving a Ctrl-C (SIGINT), but process managers, like systemd et al., usually send SIGTERM to tell a process to terminate properly. Catch that signal, in addition to SIGINT, so that we have a chance to cleanup and drop all our connections cleanly. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
…pth) Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
9a61bce
to
f773dd6
Compare
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
... unless we're mirroring self from the main broker. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
... except our own, unless instructed so. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
The tracker is responsible for tracking events, like when a message is sent, received, etc... For now, does nothing except hand out an ID. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Upon creation of a message, associate an ID to that message (for now, we do nothing with that ID, as the schemas do not define one). Track the emission and reception of messages. For now, we do nothing to actually track, but the infra is there. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
f773dd6
to
b2705ae
Compare
Ok, test passed with succes with a relevant gps log (with old version and new version to check that the its-client no longer fails) |
@tigroo I've (re)added you as a reviewer so that you can approve the PR if you |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
on site tests ok, description of the PR done.
Changes:
How to test:
/home/login/.local/bin
).its-vehicle.cfg
(set the properproject and suffix):
gpsd.persistence
TERM
signalExpected results:
inQueue
;generation_delta_time
:gpsd.persistence
duration, and are no longer emitted afterwards;inQueue
,outQueue
, andinterQueue
); the MQTT client to the local broker is reporting CAM messages at 0.5Hz, onoutQueue
;