bitsy-ai / printnanny-os

Image repository, change logs, and issue tracking for PrintNanny OS
GNU Affero General Public License v3.0
23 stars 2 forks source link

Print progress, print status, print health emails are not being received #290

Closed leigh-johnson closed 1 year ago

leigh-johnson commented 1 year ago

Describe the bug

Original report:

I turned on all notifications in the cloud and have yet to receive any communication from printnanny (start, stop, cancel, progress, issues, etc).

leigh-johnson commented 1 year ago

I'm digging into this today, and found a TLS version mismatch between websocket clients and the cloud NATS server. This would impact cloud browser notifications (not emails), but going to fix this while in the neighborhood.

2023-03-17 07:38:48.619 PDT
[7] 2023/03/17 14:38:48.618978 [ERR] websocket: TLS handshake error from 10.40.0.1:59859: read tcp 10.40.0.5:8443->10.40.0.1:59859: read: connection reset by peer
2023-03-17 07:38:49.742 PDT
[7] 2023/03/17 14:38:49.742232 [ERR] 10.40.0.1:18252 - websocket handshake error: invalid value for header 'Upgrade'
2023-03-17 07:39:08.981 PDT
[7] 2023/03/17 14:39:08.981745 [ERR] websocket: TLS handshake error from 10.128.0.29:15615: EOF
2023-03-17 07:39:09.200 PDT
[7] 2023/03/17 14:39:09.200443 [ERR] websocket: TLS handshake error from 10.128.0.29:49268: EOF
2023-03-17 07:39:09.309 PDT
[7] 2023/03/17 14:39:09.309091 [ERR] websocket: TLS handshake error from 10.128.0.29:23037: tls: no cipher suite supported by both client and server
2023-03-17 07:39:09.635 PDT
[7] 2023/03/17 14:39:09.635711 [ERR] websocket: TLS handshake error from 10.128.0.29:21481: EOF
2023-03-17 07:39:09.851 PDT
[7] 2023/03/17 14:39:09.851372 [ERR] websocket: TLS handshake error from 10.128.0.29:27278: EOF
2023-03-17 07:39:09.963 PDT
[7] 2023/03/17 14:39:09.963832 [ERR] websocket: TLS handshake error from 10.128.0.29:2875: tls: client offered only unsupported versions: [302 301]
leigh-johnson commented 1 year ago

:eyes: New error in v0.6.6-rc1:

Mar 26 16:09:11 dev-rpi4 octoprint[795]: 2023-03-26 16:09:11,959 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial connection" to "Operational"
Mar 26 16:09:12 dev-rpi4 octoprint[795]: 2023-03-26 16:09:11,999 - octoprint.plugin - ERROR - Error while calling plugin octoprint_nanny
Mar 26 16:09:12 dev-rpi4 octoprint[795]: Traceback (most recent call last):
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/site-packages/octoprint/plugin/__init__.py", line 273, in call_plugin
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     result = getattr(plugin, method)(*args, **kwargs)
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/site-packages/octoprint/util/__init__.py", line 1688, in wrapper
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     return f(*args, **kwargs)
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/site-packages/octoprint_nanny/plugins.py", line 117, in on_event
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     future.result()
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/concurrent/futures/_base.py", line 458, in result
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     return self.__get_result()
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     raise self._exception
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/site-packages/octoprint_nanny/events.py", line 244, in try_publish_nats
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     msg = build_nats_msg(event, payload)
Mar 26 16:09:12 dev-rpi4 octoprint[795]:   File "/usr/lib/python3.10/site-packages/octoprint_nanny/events.py", line 223, in build_nats_msg
Mar 26 16:09:12 dev-rpi4 octoprint[795]:     raise ValueError(
Mar 26 16:09:12 dev-rpi4 octoprint[795]: ValueError: ('Failed to build NATS message event=%s payload=%s', 'PrinterStateChanged', {'state_id': 'OPERATIONAL', 'state_string': 'Operational'})
leigh-johnson commented 1 year ago

:+1: Fixed the transformation of OctoPrint printer status events into NATS messages.

Mar 26 17:41:47 dev-rpi4 printnanny-edge-nats[649]: [2023-03-27T00:41:47Z INFO  printnanny_nats_apps::event] handle_octoprint_printer_status event=PrinterStatusChanged { status: DetectSerial }
Mar 26 17:41:48 dev-rpi4 printnanny-edge-nats[649]: [2023-03-27T00:41:48Z INFO  printnanny_nats_apps::event] handle_octoprint_printer_status event=PrinterStatusChanged { status: Operational }