[2026-10-21 13:00:25,747.747 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:00:25,751.751 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:00:25,964.964 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:00:25,985.985 INFO ] time= 21/10/2026 13:00:25 [2026-10-21 13:00:25,988.988 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:00:26,016.016 INFO ] Checking for existing commands in stream... [2026-10-21 13:00:26,134.134 INFO ] No existing commands found in stream [2026-10-21 13:00:31,165.165 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:00:31,168.168 INFO ] Waiting 3.54 seconds before fallback handling... [2026-10-21 13:00:35,196.196 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:00:35,199.199 INFO ] Checking for system updates... [2026-10-21 13:00:35,241.241 INFO ] 200 [2026-10-21 13:00:35,244.244 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:00:35,298.298 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:00:35,301.301 INFO ] No update needed [2026-10-21 13:00:35,303.303 INFO ] Checking for camera pi updates... [2026-10-21 13:00:35,341.341 INFO ] 200 [2026-10-21 13:00:35,344.344 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:00:35,395.395 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:00:45,410.410 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:00:45,451.451 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:00:45,461.461 INFO ] Script finished. Safe exiting... [2026-10-21 13:00:45,463.463 INFO ] === ACTIVE THREADS START === [2026-10-21 13:00:45,469.469 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:00:45,474.474 INFO ] === ACTIVE THREADS END === [2026-10-21 13:00:47,512.512 INFO ] ================================================ [2026-10-21 13:00:47,528.528 INFO ] Launching Daemon at Wed Oct 21 13:00:47 IST 2026 [2026-10-21 13:00:47,539.539 INFO ] ================================================ [2026-10-21 13:00:48,110.110 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:00:48 [2026-10-21 13:00:48,698.698 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:00:48,951.951 INFO ] Initializing speech engine... [2026-10-21 13:00:48,974.974 INFO ] 2026-10-21 13:00:48 [2026-10-21 13:00:49,228.228 INFO ] 2026-10-21 13:00:49 [2026-10-21 13:00:49,271.271 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:00:49,524.524 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:00:49,530.530 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:00:49,690.690 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:00:49,700.700 INFO ] time= 21/10/2026 13:00:49 [2026-10-21 13:00:49,716.716 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:00:49,720.720 INFO ] Checking for existing commands in stream... [2026-10-21 13:00:49,829.829 INFO ] No existing commands found in stream [2026-10-21 13:00:54,864.864 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:00:54,867.867 INFO ] Waiting 3.76 seconds before fallback handling... [2026-10-21 13:00:59,100.100 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:00:59,103.103 INFO ] Checking for system updates... [2026-10-21 13:00:59,145.145 INFO ] 200 [2026-10-21 13:00:59,148.148 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:00:59,204.204 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:00:59,206.206 INFO ] No update needed [2026-10-21 13:00:59,208.208 INFO ] Checking for camera pi updates... [2026-10-21 13:00:59,243.243 INFO ] 200 [2026-10-21 13:00:59,246.246 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:00:59,294.294 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:01:09,306.306 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:01:09,341.341 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:01:09,350.350 INFO ] Script finished. Safe exiting... [2026-10-21 13:01:09,353.353 INFO ] === ACTIVE THREADS START === [2026-10-21 13:01:09,366.366 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:01:09,373.373 INFO ] === ACTIVE THREADS END === [2026-10-21 13:01:11,413.413 INFO ] ================================================ [2026-10-21 13:01:11,428.428 INFO ] Launching Daemon at Wed Oct 21 13:01:11 IST 2026 [2026-10-21 13:01:11,439.439 INFO ] ================================================ [2026-10-21 13:01:11,955.955 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:01:11 [2026-10-21 13:01:12,267.267 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:01:12,410.410 INFO ] Initializing speech engine... [2026-10-21 13:01:12,416.416 INFO ] 2026-10-21 13:01:12 [2026-10-21 13:01:12,618.618 INFO ] 2026-10-21 13:01:12 [2026-10-21 13:01:12,646.646 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:01:12,829.829 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:01:12,838.838 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:01:13,033.033 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:01:13,057.057 INFO ] time= 21/10/2026 13:01:13 [2026-10-21 13:01:13,063.063 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:01:13,065.065 INFO ] Checking for existing commands in stream... [2026-10-21 13:01:13,129.129 INFO ] No existing commands found in stream [2026-10-21 13:01:18,140.140 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:01:18,143.143 INFO ] Waiting 3.05 seconds before fallback handling... [2026-10-21 13:01:21,697.697 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:01:21,700.700 INFO ] Checking for system updates... [2026-10-21 13:01:21,737.737 INFO ] 200 [2026-10-21 13:01:21,739.739 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:01:21,797.797 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:01:21,800.800 INFO ] No update needed [2026-10-21 13:01:21,802.802 INFO ] Checking for camera pi updates... [2026-10-21 13:01:21,837.837 INFO ] 200 [2026-10-21 13:01:21,840.840 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:01:21,888.888 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:01:31,899.899 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:01:31,934.934 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:01:31,944.944 INFO ] Script finished. Safe exiting... [2026-10-21 13:01:31,946.946 INFO ] === ACTIVE THREADS START === [2026-10-21 13:01:31,951.951 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:01:31,956.956 INFO ] === ACTIVE THREADS END === [2026-10-21 13:01:34,996.996 INFO ] ================================================ [2026-10-21 13:01:34,011.011 INFO ] Launching Daemon at Wed Oct 21 13:01:34 IST 2026 [2026-10-21 13:01:34,022.022 INFO ] ================================================ [2026-10-21 13:01:34,542.542 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:01:34 [2026-10-21 13:01:34,855.855 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:01:34,987.987 INFO ] Initializing speech engine... [2026-10-21 13:01:34,995.995 INFO ] 2026-10-21 13:01:34 [2026-10-21 13:01:35,210.210 INFO ] 2026-10-21 13:01:35 [2026-10-21 13:01:35,238.238 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:01:35,424.424 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:01:35,434.434 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:01:35,631.631 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:01:35,653.653 INFO ] time= 21/10/2026 13:01:35 [2026-10-21 13:01:35,659.659 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:01:35,660.660 INFO ] Checking for existing commands in stream... [2026-10-21 13:01:35,752.752 INFO ] No existing commands found in stream [2026-10-21 13:01:40,766.766 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:01:40,769.769 INFO ] Waiting 1.68 seconds before fallback handling... [2026-10-21 13:01:42,892.892 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:01:42,895.895 INFO ] Checking for system updates... [2026-10-21 13:01:42,931.931 INFO ] 200 [2026-10-21 13:01:42,934.934 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:01:42,992.992 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:01:42,995.995 INFO ] No update needed [2026-10-21 13:01:42,997.997 INFO ] Checking for camera pi updates... [2026-10-21 13:01:43,030.030 INFO ] 200 [2026-10-21 13:01:43,033.033 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:01:43,080.080 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:01:53,095.095 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:01:53,133.133 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:01:53,143.143 INFO ] Script finished. Safe exiting... [2026-10-21 13:01:53,146.146 INFO ] === ACTIVE THREADS START === [2026-10-21 13:01:53,151.151 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:01:53,155.155 INFO ] === ACTIVE THREADS END === [2026-10-21 13:01:55,194.194 INFO ] ================================================ [2026-10-21 13:01:55,209.209 INFO ] Launching Daemon at Wed Oct 21 13:01:55 IST 2026 [2026-10-21 13:01:55,220.220 INFO ] ================================================ [2026-10-21 13:01:55,903.903 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:01:55 [2026-10-21 13:01:56,554.554 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:01:56,824.824 INFO ] Initializing speech engine... [2026-10-21 13:01:56,833.833 INFO ] 2026-10-21 13:01:56 [2026-10-21 13:01:57,078.078 INFO ] 2026-10-21 13:01:57 [2026-10-21 13:01:57,098.098 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:01:57,361.361 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:01:57,365.365 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:01:57,512.512 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:01:57,570.570 INFO ] time= 21/10/2026 13:01:57 [2026-10-21 13:01:57,593.593 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:01:57,599.599 INFO ] Checking for existing commands in stream... [2026-10-21 13:01:57,689.689 INFO ] No existing commands found in stream [2026-10-21 13:02:02,703.703 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:02:02,706.706 INFO ] Waiting 0.09 seconds before fallback handling... [2026-10-21 13:02:03,260.260 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:02:03,263.263 INFO ] Checking for system updates... [2026-10-21 13:02:03,299.299 INFO ] 200 [2026-10-21 13:02:03,301.301 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:02:03,378.378 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:02:03,381.381 INFO ] No update needed [2026-10-21 13:02:03,383.383 INFO ] Checking for camera pi updates... [2026-10-21 13:02:03,418.418 INFO ] 200 [2026-10-21 13:02:03,420.420 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:02:03,476.476 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:02:13,490.490 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:02:13,526.526 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:02:13,536.536 INFO ] Script finished. Safe exiting... [2026-10-21 13:02:13,538.538 INFO ] === ACTIVE THREADS START === [2026-10-21 13:02:13,544.544 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:02:13,549.549 INFO ] === ACTIVE THREADS END === [2026-10-21 13:02:15,587.587 INFO ] ================================================ [2026-10-21 13:02:15,603.603 INFO ] Launching Daemon at Wed Oct 21 13:02:15 IST 2026 [2026-10-21 13:02:15,614.614 INFO ] ================================================ [2026-10-21 13:02:15,975.975 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:02:15 [2026-10-21 13:02:16,516.516 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:02:16,842.842 INFO ] Initializing speech engine... [2026-10-21 13:02:16,849.849 INFO ] 2026-10-21 13:02:16 [2026-10-21 13:02:17,166.166 INFO ] 2026-10-21 13:02:17 [2026-10-21 13:02:17,254.254 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:02:17,466.466 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:02:17,475.475 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:02:17,649.649 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:02:17,680.680 INFO ] time= 21/10/2026 13:02:17 [2026-10-21 13:02:17,699.699 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:02:17,729.729 INFO ] Checking for existing commands in stream... [2026-10-21 13:02:17,840.840 INFO ] No existing commands found in stream [2026-10-21 13:02:22,877.877 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:02:22,880.880 INFO ] Waiting 2.40 seconds before fallback handling... [2026-10-21 13:02:25,723.723 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:02:25,725.725 INFO ] Checking for system updates... [2026-10-21 13:02:25,747.747 INFO ] 200 [2026-10-21 13:02:25,748.748 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:02:25,780.780 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:02:25,782.782 INFO ] No update needed [2026-10-21 13:02:25,783.783 INFO ] Checking for camera pi updates... [2026-10-21 13:02:25,802.802 INFO ] 200 [2026-10-21 13:02:25,804.804 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:02:25,827.827 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:02:35,841.841 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:02:35,883.883 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:02:35,895.895 INFO ] Script finished. Safe exiting... [2026-10-21 13:02:35,898.898 INFO ] === ACTIVE THREADS START === [2026-10-21 13:02:35,905.905 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:02:35,911.911 INFO ] === ACTIVE THREADS END === [2026-10-21 13:02:37,952.952 INFO ] ================================================ [2026-10-21 13:02:37,967.967 INFO ] Launching Daemon at Wed Oct 21 13:02:37 IST 2026 [2026-10-21 13:02:37,978.978 INFO ] ================================================ [2026-10-21 13:02:38,297.297 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:02:38 [2026-10-21 13:02:38,611.611 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:02:38,854.854 INFO ] Initializing speech engine... [2026-10-21 13:02:38,863.863 INFO ] 2026-10-21 13:02:38 [2026-10-21 13:02:39,111.111 INFO ] 2026-10-21 13:02:39 [2026-10-21 13:02:39,147.147 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:02:39,402.402 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:02:39,411.411 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:02:39,552.552 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:02:39,617.617 INFO ] time= 21/10/2026 13:02:39 [2026-10-21 13:02:39,676.676 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:02:39,682.682 INFO ] Checking for existing commands in stream... [2026-10-21 13:02:39,831.831 INFO ] No existing commands found in stream [2026-10-21 13:02:44,854.854 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:02:44,857.857 INFO ] Waiting 3.76 seconds before fallback handling... [2026-10-21 13:02:49,048.048 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:02:49,049.049 INFO ] Checking for system updates... [2026-10-21 13:02:49,070.070 INFO ] 200 [2026-10-21 13:02:49,071.071 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:02:49,103.103 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:02:49,104.104 INFO ] No update needed [2026-10-21 13:02:49,106.106 INFO ] Checking for camera pi updates... [2026-10-21 13:02:49,125.125 INFO ] 200 [2026-10-21 13:02:49,126.126 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:02:49,150.150 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:02:59,161.161 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:02:59,196.196 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:02:59,206.206 INFO ] Script finished. Safe exiting... [2026-10-21 13:02:59,208.208 INFO ] === ACTIVE THREADS START === [2026-10-21 13:02:59,213.213 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:02:59,219.219 INFO ] === ACTIVE THREADS END === [2026-10-21 13:03:01,258.258 INFO ] ================================================ [2026-10-21 13:03:01,273.273 INFO ] Launching Daemon at Wed Oct 21 13:03:01 IST 2026 [2026-10-21 13:03:01,285.285 INFO ] ================================================ [2026-10-21 13:03:01,932.932 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:03:01 [2026-10-21 13:03:02,644.644 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:03:02,984.984 INFO ] Initializing speech engine... [2026-10-21 13:03:02,990.990 INFO ] 2026-10-21 13:03:02 [2026-10-21 13:03:03,310.310 INFO ] 2026-10-21 13:03:03 [2026-10-21 13:03:03,356.356 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:03:03,597.597 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:03:03,605.605 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:03:03,779.779 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:03:03,790.790 INFO ] time= 21/10/2026 13:03:03 [2026-10-21 13:03:03,797.797 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:03:03,844.844 INFO ] Checking for existing commands in stream... [2026-10-21 13:03:03,998.998 INFO ] No existing commands found in stream [2026-10-21 13:03:09,019.019 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:03:09,022.022 INFO ] Waiting 1.18 seconds before fallback handling... [2026-10-21 13:03:10,646.646 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:03:10,647.647 INFO ] Checking for system updates... [2026-10-21 13:03:10,667.667 INFO ] 200 [2026-10-21 13:03:10,669.669 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:03:10,700.700 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:03:10,701.701 INFO ] No update needed [2026-10-21 13:03:10,702.702 INFO ] Checking for camera pi updates... [2026-10-21 13:03:10,721.721 INFO ] 200 [2026-10-21 13:03:10,722.722 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:03:10,747.747 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:03:20,761.761 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:03:20,796.796 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:03:20,805.805 INFO ] Script finished. Safe exiting... [2026-10-21 13:03:20,808.808 INFO ] === ACTIVE THREADS START === [2026-10-21 13:03:20,813.813 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:03:20,818.818 INFO ] === ACTIVE THREADS END === [2026-10-21 13:03:22,859.859 INFO ] ================================================ [2026-10-21 13:03:22,874.874 INFO ] Launching Daemon at Wed Oct 21 13:03:22 IST 2026 [2026-10-21 13:03:22,886.886 INFO ] ================================================ [2026-10-21 13:03:23,229.229 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:03:23 [2026-10-21 13:03:23,558.558 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:03:23,818.818 INFO ] Initializing speech engine... [2026-10-21 13:03:23,824.824 INFO ] 2026-10-21 13:03:23 [2026-10-21 13:03:24,098.098 INFO ] 2026-10-21 13:03:24 [2026-10-21 13:03:24,147.147 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:03:24,348.348 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:03:24,361.361 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:03:24,573.573 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:03:24,580.580 INFO ] time= 21/10/2026 13:03:24 [2026-10-21 13:03:24,644.644 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:03:24,703.703 INFO ] Checking for existing commands in stream... [2026-10-21 13:03:24,843.843 INFO ] No existing commands found in stream [2026-10-21 13:03:29,865.865 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:03:29,868.868 INFO ] Waiting 0.72 seconds before fallback handling... [2026-10-21 13:03:31,081.081 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:03:31,083.083 INFO ] Checking for system updates... [2026-10-21 13:03:31,120.120 INFO ] 200 [2026-10-21 13:03:31,123.123 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:03:31,175.175 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:03:31,178.178 INFO ] No update needed [2026-10-21 13:03:31,180.180 INFO ] Checking for camera pi updates... [2026-10-21 13:03:31,221.221 INFO ] 200 [2026-10-21 13:03:31,224.224 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:03:31,264.264 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:03:41,389.389 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:03:41,427.427 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:03:41,437.437 INFO ] Script finished. Safe exiting... [2026-10-21 13:03:41,439.439 INFO ] === ACTIVE THREADS START === [2026-10-21 13:03:41,444.444 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:03:41,449.449 INFO ] === ACTIVE THREADS END === [2026-10-21 13:03:43,487.487 INFO ] ================================================ [2026-10-21 13:03:43,502.502 INFO ] Launching Daemon at Wed Oct 21 13:03:43 IST 2026 [2026-10-21 13:03:43,514.514 INFO ] ================================================ [2026-10-21 13:03:43,870.870 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:03:43 [2026-10-21 13:03:44,190.190 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:03:44,334.334 INFO ] Initializing speech engine... [2026-10-21 13:03:44,339.339 INFO ] 2026-10-21 13:03:44 [2026-10-21 13:03:44,544.544 INFO ] 2026-10-21 13:03:44 [2026-10-21 13:03:44,573.573 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:03:44,757.757 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:03:44,765.765 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:03:44,958.958 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:03:44,983.983 INFO ] time= 21/10/2026 13:03:44 [2026-10-21 13:03:44,989.989 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:03:44,990.990 INFO ] Checking for existing commands in stream... [2026-10-21 13:03:45,081.081 INFO ] No existing commands found in stream [2026-10-21 13:03:50,090.090 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:03:50,093.093 INFO ] Waiting 1.52 seconds before fallback handling... [2026-10-21 13:03:52,114.114 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:03:52,117.117 INFO ] Checking for system updates... [2026-10-21 13:03:52,158.158 INFO ] 200 [2026-10-21 13:03:52,161.161 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:03:52,214.214 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:03:52,217.217 INFO ] No update needed [2026-10-21 13:03:52,219.219 INFO ] Checking for camera pi updates... [2026-10-21 13:03:52,253.253 INFO ] 200 [2026-10-21 13:03:52,256.256 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:03:52,302.302 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:04:02,317.317 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:04:02,361.361 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:04:02,373.373 INFO ] Script finished. Safe exiting... [2026-10-21 13:04:02,376.376 INFO ] === ACTIVE THREADS START === [2026-10-21 13:04:02,382.382 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:04:02,391.391 INFO ] === ACTIVE THREADS END === [2026-10-21 13:04:04,440.440 INFO ] ================================================ [2026-10-21 13:04:04,455.455 INFO ] Launching Daemon at Wed Oct 21 13:04:04 IST 2026 [2026-10-21 13:04:04,466.466 INFO ] ================================================ [2026-10-21 13:04:05,046.046 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:04:05 [2026-10-21 13:04:05,641.641 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:04:05,888.888 INFO ] Initializing speech engine... [2026-10-21 13:04:05,894.894 INFO ] 2026-10-21 13:04:05 [2026-10-21 13:04:06,171.171 INFO ] 2026-10-21 13:04:06 [2026-10-21 13:04:06,209.209 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:04:06,396.396 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:04:06,418.418 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:04:06,575.575 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:04:06,633.633 INFO ] time= 21/10/2026 13:04:06 [2026-10-21 13:04:06,650.650 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:04:06,661.661 INFO ] Checking for existing commands in stream... [2026-10-21 13:04:06,786.786 INFO ] No existing commands found in stream [2026-10-21 13:04:11,796.796 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:04:11,799.799 INFO ] Waiting 1.55 seconds before fallback handling... [2026-10-21 13:04:13,884.884 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:04:13,887.887 INFO ] Checking for system updates... [2026-10-21 13:04:13,937.937 INFO ] 200 [2026-10-21 13:04:13,940.940 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:04:14,009.009 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:04:14,012.012 INFO ] No update needed [2026-10-21 13:04:14,016.016 INFO ] Checking for camera pi updates... [2026-10-21 13:04:14,077.077 INFO ] 200 [2026-10-21 13:04:14,080.080 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:04:14,136.136 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:04:24,153.153 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:04:24,189.189 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:04:24,199.199 INFO ] Script finished. Safe exiting... [2026-10-21 13:04:24,201.201 INFO ] === ACTIVE THREADS START === [2026-10-21 13:04:24,207.207 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:04:24,212.212 INFO ] === ACTIVE THREADS END === [2026-10-21 13:04:26,251.251 INFO ] ================================================ [2026-10-21 13:04:26,267.267 INFO ] Launching Daemon at Wed Oct 21 13:04:26 IST 2026 [2026-10-21 13:04:26,278.278 INFO ] ================================================ [2026-10-21 13:04:26,889.889 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:04:26 [2026-10-21 13:04:27,501.501 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:04:27,769.769 INFO ] Initializing speech engine... [2026-10-21 13:04:27,786.786 INFO ] 2026-10-21 13:04:27 [2026-10-21 13:04:28,067.067 INFO ] 2026-10-21 13:04:28 [2026-10-21 13:04:28,104.104 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:04:28,366.366 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:04:28,376.376 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:04:28,516.516 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:04:28,570.570 INFO ] time= 21/10/2026 13:04:28 [2026-10-21 13:04:28,584.584 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:04:28,592.592 INFO ] Checking for existing commands in stream... [2026-10-21 13:04:28,713.713 INFO ] No existing commands found in stream [2026-10-21 13:04:33,727.727 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:04:33,730.730 INFO ] Waiting 1.18 seconds before fallback handling... [2026-10-21 13:04:35,362.362 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:04:35,364.364 INFO ] Checking for system updates... [2026-10-21 13:04:35,384.384 INFO ] 200 [2026-10-21 13:04:35,385.385 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:04:35,420.420 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:04:35,421.421 INFO ] No update needed [2026-10-21 13:04:35,422.422 INFO ] Checking for camera pi updates... [2026-10-21 13:04:35,441.441 INFO ] 200 [2026-10-21 13:04:35,443.443 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:04:35,466.466 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:04:45,477.477 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:04:45,515.515 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:04:45,525.525 INFO ] Script finished. Safe exiting... [2026-10-21 13:04:45,528.528 INFO ] === ACTIVE THREADS START === [2026-10-21 13:04:45,534.534 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:04:45,539.539 INFO ] === ACTIVE THREADS END === [2026-10-21 13:04:47,579.579 INFO ] ================================================ [2026-10-21 13:04:47,594.594 INFO ] Launching Daemon at Wed Oct 21 13:04:47 IST 2026 [2026-10-21 13:04:47,606.606 INFO ] ================================================ [2026-10-21 13:04:48,195.195 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:04:48 [2026-10-21 13:04:48,811.811 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:04:49,117.117 INFO ] Initializing speech engine... [2026-10-21 13:04:49,129.129 INFO ] 2026-10-21 13:04:49 [2026-10-21 13:04:49,452.452 INFO ] 2026-10-21 13:04:49 [2026-10-21 13:04:49,538.538 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:04:49,754.754 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:04:49,759.759 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:04:49,955.955 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:04:49,977.977 INFO ] time= 21/10/2026 13:04:49 [2026-10-21 13:04:50,009.009 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:04:50,018.018 INFO ] Checking for existing commands in stream... [2026-10-21 13:04:50,145.145 INFO ] No existing commands found in stream [2026-10-21 13:04:55,171.171 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:04:55,175.175 INFO ] Waiting 2.42 seconds before fallback handling... [2026-10-21 13:04:58,134.134 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:04:58,137.137 INFO ] Checking for system updates... [2026-10-21 13:04:58,175.175 INFO ] 200 [2026-10-21 13:04:58,178.178 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:04:58,181.181 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:04:58,184.184 INFO ] Checking for camera pi updates... [2026-10-21 13:04:58,225.225 INFO ] 200 [2026-10-21 13:04:58,228.228 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:04:58,231.231 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:04:58,234.234 INFO ] Script finished. Safe exiting... [2026-10-21 13:04:58,237.237 INFO ] === ACTIVE THREADS START === [2026-10-21 13:04:58,243.243 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:04:58,249.249 INFO ] === ACTIVE THREADS END === [2026-10-21 13:05:00,294.294 INFO ] ================================================ [2026-10-21 13:05:00,310.310 INFO ] Launching Daemon at Wed Oct 21 13:05:00 IST 2026 [2026-10-21 13:05:00,321.321 INFO ] ================================================ [2026-10-21 13:05:00,917.917 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:05:00 [2026-10-21 13:05:01,528.528 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:05:01,808.808 INFO ] Initializing speech engine... [2026-10-21 13:05:01,822.822 INFO ] 2026-10-21 13:05:01 [2026-10-21 13:05:02,114.114 INFO ] 2026-10-21 13:05:02 [2026-10-21 13:05:02,234.234 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:05:02,544.544 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:05:02,547.547 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:05:02,710.710 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:05:02,715.715 INFO ] time= 21/10/2026 13:05:02 [2026-10-21 13:05:02,733.733 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:05:02,750.750 INFO ] Checking for existing commands in stream... [2026-10-21 13:05:02,824.824 INFO ] No existing commands found in stream [2026-10-21 13:05:07,835.835 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:05:07,837.837 INFO ] Waiting 1.01 seconds before fallback handling... [2026-10-21 13:05:09,369.369 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:05:09,372.372 INFO ] Checking for system updates... [2026-10-21 13:05:09,408.408 INFO ] 200 [2026-10-21 13:05:09,410.410 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:09,413.413 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:05:09,415.415 INFO ] Checking for camera pi updates... [2026-10-21 13:05:09,449.449 INFO ] 200 [2026-10-21 13:05:09,451.451 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:09,454.454 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:05:09,457.457 INFO ] Script finished. Safe exiting... [2026-10-21 13:05:09,459.459 INFO ] === ACTIVE THREADS START === [2026-10-21 13:05:09,465.465 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:05:09,470.470 INFO ] === ACTIVE THREADS END === [2026-10-21 13:05:11,509.509 INFO ] ================================================ [2026-10-21 13:05:11,524.524 INFO ] Launching Daemon at Wed Oct 21 13:05:11 IST 2026 [2026-10-21 13:05:11,535.535 INFO ] ================================================ [2026-10-21 13:05:12,108.108 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:05:12 [2026-10-21 13:05:12,700.700 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:05:12,957.957 INFO ] Initializing speech engine... [2026-10-21 13:05:12,976.976 INFO ] 2026-10-21 13:05:12 [2026-10-21 13:05:13,243.243 INFO ] 2026-10-21 13:05:13 [2026-10-21 13:05:13,280.280 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:05:13,566.566 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:05:13,576.576 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:05:13,731.731 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:05:13,760.760 INFO ] time= 21/10/2026 13:05:13 [2026-10-21 13:05:13,810.810 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:05:13,860.860 INFO ] Checking for existing commands in stream... [2026-10-21 13:05:14,022.022 INFO ] No existing commands found in stream [2026-10-21 13:05:19,046.046 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:05:19,049.049 INFO ] Waiting 2.63 seconds before fallback handling... [2026-10-21 13:05:22,181.181 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:05:22,184.184 INFO ] Checking for system updates... [2026-10-21 13:05:22,222.222 INFO ] 200 [2026-10-21 13:05:22,225.225 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:22,227.227 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:05:22,229.229 INFO ] Checking for camera pi updates... [2026-10-21 13:05:22,262.262 INFO ] 200 [2026-10-21 13:05:22,265.265 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:22,267.267 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:05:22,270.270 INFO ] Script finished. Safe exiting... [2026-10-21 13:05:22,272.272 INFO ] === ACTIVE THREADS START === [2026-10-21 13:05:22,277.277 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:05:22,282.282 INFO ] === ACTIVE THREADS END === [2026-10-21 13:05:24,322.322 INFO ] ================================================ [2026-10-21 13:05:24,338.338 INFO ] Launching Daemon at Wed Oct 21 13:05:24 IST 2026 [2026-10-21 13:05:24,358.358 INFO ] ================================================ [2026-10-21 13:05:25,014.014 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:05:25 [2026-10-21 13:05:25,760.760 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:05:26,110.110 INFO ] Initializing speech engine... [2026-10-21 13:05:26,115.115 INFO ] 2026-10-21 13:05:26 [2026-10-21 13:05:26,420.420 INFO ] 2026-10-21 13:05:26 [2026-10-21 13:05:26,515.515 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:05:26,721.721 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:05:26,737.737 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:05:26,959.959 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:05:27,002.002 INFO ] time= 21/10/2026 13:05:26 [2026-10-21 13:05:27,022.022 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:05:27,046.046 INFO ] Checking for existing commands in stream... [2026-10-21 13:05:27,210.210 INFO ] No existing commands found in stream [2026-10-21 13:05:32,239.239 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:05:32,242.242 INFO ] Waiting 1.07 seconds before fallback handling... [2026-10-21 13:05:33,909.909 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:05:33,915.915 INFO ] Checking for system updates... [2026-10-21 13:05:33,963.963 INFO ] 200 [2026-10-21 13:05:33,968.968 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:33,974.974 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:05:33,979.979 INFO ] Checking for camera pi updates... [2026-10-21 13:05:34,050.050 INFO ] 200 [2026-10-21 13:05:34,056.056 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:34,062.062 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:05:34,068.068 INFO ] Script finished. Safe exiting... [2026-10-21 13:05:34,072.072 INFO ] === ACTIVE THREADS START === [2026-10-21 13:05:34,081.081 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:05:34,089.089 INFO ] === ACTIVE THREADS END === [2026-10-21 13:05:36,140.140 INFO ] ================================================ [2026-10-21 13:05:36,158.158 INFO ] Launching Daemon at Wed Oct 21 13:05:36 IST 2026 [2026-10-21 13:05:36,172.172 INFO ] ================================================ [2026-10-21 13:05:36,828.828 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:05:36 [2026-10-21 13:05:37,565.565 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:05:37,918.918 INFO ] Initializing speech engine... [2026-10-21 13:05:37,928.928 INFO ] 2026-10-21 13:05:37 [2026-10-21 13:05:38,216.216 INFO ] 2026-10-21 13:05:38 [2026-10-21 13:05:38,306.306 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:05:38,529.529 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:05:38,535.535 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:05:38,737.737 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:05:38,744.744 INFO ] time= 21/10/2026 13:05:38 [2026-10-21 13:05:38,763.763 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:05:38,786.786 INFO ] Checking for existing commands in stream... [2026-10-21 13:05:38,923.923 INFO ] No existing commands found in stream [2026-10-21 13:05:43,943.943 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:05:43,946.946 INFO ] Waiting 1.85 seconds before fallback handling... [2026-10-21 13:05:46,290.290 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:05:46,293.293 INFO ] Checking for system updates... [2026-10-21 13:05:46,329.329 INFO ] 200 [2026-10-21 13:05:46,332.332 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:46,334.334 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:05:46,337.337 INFO ] Checking for camera pi updates... [2026-10-21 13:05:46,371.371 INFO ] 200 [2026-10-21 13:05:46,373.373 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:05:46,376.376 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:05:46,378.378 INFO ] Script finished. Safe exiting... [2026-10-21 13:05:46,380.380 INFO ] === ACTIVE THREADS START === [2026-10-21 13:05:46,386.386 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:05:46,391.391 INFO ] === ACTIVE THREADS END === [2026-10-21 13:05:48,432.432 INFO ] ================================================ [2026-10-21 13:05:48,447.447 INFO ] Launching Daemon at Wed Oct 21 13:05:48 IST 2026 [2026-10-21 13:05:48,458.458 INFO ] ================================================ [2026-10-21 13:05:49,046.046 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:05:49 [2026-10-21 13:05:49,658.658 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:05:50,041.041 INFO ] Initializing speech engine... [2026-10-21 13:05:50,053.053 INFO ] 2026-10-21 13:05:50 [2026-10-21 13:05:50,329.329 INFO ] 2026-10-21 13:05:50 [2026-10-21 13:05:50,374.374 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:05:50,670.670 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:05:50,677.677 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:05:50,880.880 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:05:50,887.887 INFO ] time= 21/10/2026 13:05:50 [2026-10-21 13:05:50,906.906 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:05:50,934.934 INFO ] Checking for existing commands in stream... [2026-10-21 13:05:51,048.048 INFO ] No existing commands found in stream [2026-10-21 13:05:56,068.068 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:05:56,071.071 INFO ] Waiting 3.46 seconds before fallback handling... [2026-10-21 13:05:59,996.996 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:05:59,999.999 INFO ] Checking for system updates... [2026-10-21 13:06:00,035.035 INFO ] 200 [2026-10-21 13:06:00,037.037 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:00,040.040 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:06:00,042.042 INFO ] Checking for camera pi updates... [2026-10-21 13:06:00,081.081 INFO ] 200 [2026-10-21 13:06:00,083.083 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:00,086.086 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:06:00,088.088 INFO ] Script finished. Safe exiting... [2026-10-21 13:06:00,091.091 INFO ] === ACTIVE THREADS START === [2026-10-21 13:06:00,096.096 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:06:00,101.101 INFO ] === ACTIVE THREADS END === [2026-10-21 13:06:02,142.142 INFO ] ================================================ [2026-10-21 13:06:02,162.162 INFO ] Launching Daemon at Wed Oct 21 13:06:02 IST 2026 [2026-10-21 13:06:02,178.178 INFO ] ================================================ [2026-10-21 13:06:02,829.829 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:06:02 [2026-10-21 13:06:03,510.510 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:06:03,834.834 INFO ] Initializing speech engine... [2026-10-21 13:06:03,841.841 INFO ] 2026-10-21 13:06:03 [2026-10-21 13:06:04,119.119 INFO ] 2026-10-21 13:06:04 [2026-10-21 13:06:04,157.157 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:06:04,364.364 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:06:04,372.372 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:06:04,553.553 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:06:04,563.563 INFO ] time= 21/10/2026 13:06:04 [2026-10-21 13:06:04,570.570 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:06:04,603.603 INFO ] Checking for existing commands in stream... [2026-10-21 13:06:04,728.728 INFO ] No existing commands found in stream [2026-10-21 13:06:09,758.758 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:06:09,761.761 INFO ] Waiting 2.95 seconds before fallback handling... [2026-10-21 13:06:13,195.195 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:06:13,198.198 INFO ] Checking for system updates... [2026-10-21 13:06:13,234.234 INFO ] 200 [2026-10-21 13:06:13,237.237 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:13,239.239 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:06:13,245.245 INFO ] Checking for camera pi updates... [2026-10-21 13:06:13,280.280 INFO ] 200 [2026-10-21 13:06:13,282.282 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:13,285.285 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:06:13,287.287 INFO ] Script finished. Safe exiting... [2026-10-21 13:06:13,290.290 INFO ] === ACTIVE THREADS START === [2026-10-21 13:06:13,295.295 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:06:13,301.301 INFO ] === ACTIVE THREADS END === [2026-10-21 13:06:15,340.340 INFO ] ================================================ [2026-10-21 13:06:15,356.356 INFO ] Launching Daemon at Wed Oct 21 13:06:15 IST 2026 [2026-10-21 13:06:15,367.367 INFO ] ================================================ [2026-10-21 13:06:16,012.012 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:06:16 [2026-10-21 13:06:16,624.624 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:06:16,880.880 INFO ] Initializing speech engine... [2026-10-21 13:06:16,903.903 INFO ] 2026-10-21 13:06:16 [2026-10-21 13:06:17,165.165 INFO ] 2026-10-21 13:06:17 [2026-10-21 13:06:17,201.201 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:06:17,462.462 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:06:17,472.472 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:06:17,690.690 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:06:17,740.740 INFO ] time= 21/10/2026 13:06:17 [2026-10-21 13:06:17,746.746 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:06:17,767.767 INFO ] Checking for existing commands in stream... [2026-10-21 13:06:17,905.905 INFO ] No existing commands found in stream [2026-10-21 13:06:22,930.930 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:06:22,934.934 INFO ] Waiting 1.85 seconds before fallback handling... [2026-10-21 13:06:25,292.292 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:06:25,294.294 INFO ] Checking for system updates... [2026-10-21 13:06:25,330.330 INFO ] 200 [2026-10-21 13:06:25,332.332 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:25,335.335 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:06:25,337.337 INFO ] Checking for camera pi updates... [2026-10-21 13:06:25,371.371 INFO ] 200 [2026-10-21 13:06:25,373.373 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:25,376.376 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:06:25,378.378 INFO ] Script finished. Safe exiting... [2026-10-21 13:06:25,381.381 INFO ] === ACTIVE THREADS START === [2026-10-21 13:06:25,387.387 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:06:25,392.392 INFO ] === ACTIVE THREADS END === [2026-10-21 13:06:27,433.433 INFO ] ================================================ [2026-10-21 13:06:27,449.449 INFO ] Launching Daemon at Wed Oct 21 13:06:27 IST 2026 [2026-10-21 13:06:27,461.461 INFO ] ================================================ [2026-10-21 13:06:28,048.048 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:06:28 [2026-10-21 13:06:28,651.651 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:06:28,934.934 INFO ] Initializing speech engine... [2026-10-21 13:06:28,940.940 INFO ] 2026-10-21 13:06:28 [2026-10-21 13:06:29,203.203 INFO ] 2026-10-21 13:06:29 [2026-10-21 13:06:29,254.254 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:06:29,485.485 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:06:29,491.491 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:06:29,713.713 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:06:29,750.750 INFO ] time= 21/10/2026 13:06:29 [2026-10-21 13:06:29,768.768 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:06:29,775.775 INFO ] Checking for existing commands in stream... [2026-10-21 13:06:29,907.907 INFO ] No existing commands found in stream [2026-10-21 13:06:34,926.926 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:06:34,929.929 INFO ] Waiting 2.01 seconds before fallback handling... [2026-10-21 13:06:37,432.432 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:06:37,435.435 INFO ] Checking for system updates... [2026-10-21 13:06:37,471.471 INFO ] 200 [2026-10-21 13:06:37,473.473 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:37,476.476 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:06:37,478.478 INFO ] Checking for camera pi updates... [2026-10-21 13:06:37,512.512 INFO ] 200 [2026-10-21 13:06:37,515.515 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:37,518.518 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:06:37,520.520 INFO ] Script finished. Safe exiting... [2026-10-21 13:06:37,522.522 INFO ] === ACTIVE THREADS START === [2026-10-21 13:06:37,528.528 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:06:37,533.533 INFO ] === ACTIVE THREADS END === [2026-10-21 13:06:39,572.572 INFO ] ================================================ [2026-10-21 13:06:39,587.587 INFO ] Launching Daemon at Wed Oct 21 13:06:39 IST 2026 [2026-10-21 13:06:39,598.598 INFO ] ================================================ [2026-10-21 13:06:40,172.172 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:06:40 [2026-10-21 13:06:40,761.761 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:06:41,031.031 INFO ] Initializing speech engine... [2026-10-21 13:06:41,044.044 INFO ] 2026-10-21 13:06:41 [2026-10-21 13:06:41,297.297 INFO ] 2026-10-21 13:06:41 [2026-10-21 13:06:41,332.332 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:06:41,537.537 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:06:41,589.589 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:06:41,743.743 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:06:41,797.797 INFO ] time= 21/10/2026 13:06:41 [2026-10-21 13:06:41,847.847 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:06:41,878.878 INFO ] Checking for existing commands in stream... [2026-10-21 13:06:42,011.011 INFO ] No existing commands found in stream [2026-10-21 13:06:47,041.041 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:06:47,044.044 INFO ] Waiting 1.92 seconds before fallback handling... [2026-10-21 13:06:49,551.551 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:06:49,554.554 INFO ] Checking for system updates... [2026-10-21 13:06:49,594.594 INFO ] 200 [2026-10-21 13:06:49,597.597 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:49,600.600 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:06:49,602.602 INFO ] Checking for camera pi updates... [2026-10-21 13:06:49,640.640 INFO ] 200 [2026-10-21 13:06:49,642.642 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:06:49,645.645 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:06:49,647.647 INFO ] Script finished. Safe exiting... [2026-10-21 13:06:49,650.650 INFO ] === ACTIVE THREADS START === [2026-10-21 13:06:49,655.655 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:06:49,660.660 INFO ] === ACTIVE THREADS END === [2026-10-21 13:06:51,701.701 INFO ] ================================================ [2026-10-21 13:06:51,717.717 INFO ] Launching Daemon at Wed Oct 21 13:06:51 IST 2026 [2026-10-21 13:06:51,727.727 INFO ] ================================================ [2026-10-21 13:06:52,333.333 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:06:52 [2026-10-21 13:06:52,923.923 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:06:53,174.174 INFO ] Initializing speech engine... [2026-10-21 13:06:53,189.189 INFO ] 2026-10-21 13:06:53 [2026-10-21 13:06:53,458.458 INFO ] 2026-10-21 13:06:53 [2026-10-21 13:06:53,494.494 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:06:53,754.754 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:06:53,764.764 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:06:53,903.903 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:06:53,973.973 INFO ] time= 21/10/2026 13:06:53 [2026-10-21 13:06:54,028.028 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:06:54,037.037 INFO ] Checking for existing commands in stream... [2026-10-21 13:06:54,159.159 INFO ] No existing commands found in stream [2026-10-21 13:06:59,185.185 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:06:59,187.187 INFO ] Waiting 2.88 seconds before fallback handling... [2026-10-21 13:07:02,589.589 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:07:02,592.592 INFO ] Checking for system updates... [2026-10-21 13:07:02,647.647 INFO ] 200 [2026-10-21 13:07:02,650.650 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:02,653.653 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:07:02,657.657 INFO ] Checking for camera pi updates... [2026-10-21 13:07:02,696.696 INFO ] 200 [2026-10-21 13:07:02,699.699 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:02,702.702 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:07:02,710.710 INFO ] Script finished. Safe exiting... [2026-10-21 13:07:02,713.713 INFO ] === ACTIVE THREADS START === [2026-10-21 13:07:02,719.719 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:07:02,726.726 INFO ] === ACTIVE THREADS END === [2026-10-21 13:07:04,774.774 INFO ] ================================================ [2026-10-21 13:07:04,789.789 INFO ] Launching Daemon at Wed Oct 21 13:07:04 IST 2026 [2026-10-21 13:07:04,801.801 INFO ] ================================================ [2026-10-21 13:07:05,481.481 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:07:05 [2026-10-21 13:07:06,184.184 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:07:06,513.513 INFO ] Initializing speech engine... [2026-10-21 13:07:06,528.528 INFO ] 2026-10-21 13:07:06 [2026-10-21 13:07:06,820.820 INFO ] 2026-10-21 13:07:06 [2026-10-21 13:07:06,876.876 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:07:07,108.108 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:07:07,119.119 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:07:07,275.275 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:07:07,330.330 INFO ] time= 21/10/2026 13:07:07 [2026-10-21 13:07:07,393.393 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:07:07,401.401 INFO ] Checking for existing commands in stream... [2026-10-21 13:07:07,550.550 INFO ] No existing commands found in stream [2026-10-21 13:07:12,570.570 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:07:12,574.574 INFO ] Waiting 0.46 seconds before fallback handling... [2026-10-21 13:07:13,561.561 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:07:13,563.563 INFO ] Checking for system updates... [2026-10-21 13:07:13,600.600 INFO ] 200 [2026-10-21 13:07:13,602.602 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:13,605.605 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:07:13,607.607 INFO ] Checking for camera pi updates... [2026-10-21 13:07:13,642.642 INFO ] 200 [2026-10-21 13:07:13,644.644 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:13,647.647 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:07:13,649.649 INFO ] Script finished. Safe exiting... [2026-10-21 13:07:13,652.652 INFO ] === ACTIVE THREADS START === [2026-10-21 13:07:13,657.657 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:07:13,662.662 INFO ] === ACTIVE THREADS END === [2026-10-21 13:07:15,702.702 INFO ] ================================================ [2026-10-21 13:07:15,717.717 INFO ] Launching Daemon at Wed Oct 21 13:07:15 IST 2026 [2026-10-21 13:07:15,728.728 INFO ] ================================================ [2026-10-21 13:07:16,324.324 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:07:16 [2026-10-21 13:07:16,928.928 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:07:17,212.212 INFO ] Initializing speech engine... [2026-10-21 13:07:17,225.225 INFO ] 2026-10-21 13:07:17 [2026-10-21 13:07:17,485.485 INFO ] 2026-10-21 13:07:17 [2026-10-21 13:07:17,536.536 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:07:17,765.765 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:07:17,770.770 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:07:18,019.019 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:07:18,031.031 INFO ] time= 21/10/2026 13:07:18 [2026-10-21 13:07:18,049.049 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:07:18,076.076 INFO ] Checking for existing commands in stream... [2026-10-21 13:07:18,235.235 INFO ] No existing commands found in stream [2026-10-21 13:07:23,265.265 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:07:23,268.268 INFO ] Waiting 2.98 seconds before fallback handling... [2026-10-21 13:07:26,718.718 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:07:26,721.721 INFO ] Checking for system updates... [2026-10-21 13:07:26,757.757 INFO ] 200 [2026-10-21 13:07:26,760.760 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:26,762.762 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:07:26,765.765 INFO ] Checking for camera pi updates... [2026-10-21 13:07:26,799.799 INFO ] 200 [2026-10-21 13:07:26,801.801 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:26,804.804 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:07:26,806.806 INFO ] Script finished. Safe exiting... [2026-10-21 13:07:26,809.809 INFO ] === ACTIVE THREADS START === [2026-10-21 13:07:26,814.814 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:07:26,820.820 INFO ] === ACTIVE THREADS END === [2026-10-21 13:07:28,860.860 INFO ] ================================================ [2026-10-21 13:07:28,876.876 INFO ] Launching Daemon at Wed Oct 21 13:07:28 IST 2026 [2026-10-21 13:07:28,887.887 INFO ] ================================================ [2026-10-21 13:07:29,474.474 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:07:29 [2026-10-21 13:07:30,078.078 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:07:30,354.354 INFO ] Initializing speech engine... [2026-10-21 13:07:30,364.364 INFO ] 2026-10-21 13:07:30 [2026-10-21 13:07:30,629.629 INFO ] 2026-10-21 13:07:30 [2026-10-21 13:07:30,683.683 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:07:30,911.911 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:07:30,917.917 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:07:31,161.161 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:07:31,179.179 INFO ] time= 21/10/2026 13:07:31 [2026-10-21 13:07:31,198.198 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:07:31,215.215 INFO ] Checking for existing commands in stream... [2026-10-21 13:07:31,339.339 INFO ] No existing commands found in stream [2026-10-21 13:07:36,369.369 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:07:36,372.372 INFO ] Waiting 0.35 seconds before fallback handling... [2026-10-21 13:07:37,194.194 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:07:37,197.197 INFO ] Checking for system updates... [2026-10-21 13:07:37,233.233 INFO ] 200 [2026-10-21 13:07:37,236.236 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:37,238.238 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:07:37,241.241 INFO ] Checking for camera pi updates... [2026-10-21 13:07:37,275.275 INFO ] 200 [2026-10-21 13:07:37,278.278 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:37,281.281 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:07:37,283.283 INFO ] Script finished. Safe exiting... [2026-10-21 13:07:37,286.286 INFO ] === ACTIVE THREADS START === [2026-10-21 13:07:37,291.291 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:07:37,296.296 INFO ] === ACTIVE THREADS END === [2026-10-21 13:07:39,335.335 INFO ] ================================================ [2026-10-21 13:07:39,351.351 INFO ] Launching Daemon at Wed Oct 21 13:07:39 IST 2026 [2026-10-21 13:07:39,361.361 INFO ] ================================================ [2026-10-21 13:07:40,040.040 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:07:40 [2026-10-21 13:07:40,738.738 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:07:41,054.054 INFO ] Initializing speech engine... [2026-10-21 13:07:41,069.069 INFO ] 2026-10-21 13:07:41 [2026-10-21 13:07:41,388.388 INFO ] 2026-10-21 13:07:41 [2026-10-21 13:07:41,478.478 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:07:41,713.713 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:07:41,769.769 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:07:41,923.923 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:07:41,944.944 INFO ] time= 21/10/2026 13:07:41 [2026-10-21 13:07:41,965.965 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:07:41,974.974 INFO ] Checking for existing commands in stream... [2026-10-21 13:07:42,089.089 INFO ] No existing commands found in stream [2026-10-21 13:07:47,115.115 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:07:47,119.119 INFO ] Waiting 0.98 seconds before fallback handling... [2026-10-21 13:07:48,589.589 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:07:48,591.591 INFO ] Checking for system updates... [2026-10-21 13:07:48,627.627 INFO ] 200 [2026-10-21 13:07:48,630.630 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:48,632.632 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:07:48,638.638 INFO ] Checking for camera pi updates... [2026-10-21 13:07:48,674.674 INFO ] 200 [2026-10-21 13:07:48,677.677 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:07:48,679.679 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:07:48,681.681 INFO ] Script finished. Safe exiting... [2026-10-21 13:07:48,684.684 INFO ] === ACTIVE THREADS START === [2026-10-21 13:07:48,689.689 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:07:48,694.694 INFO ] === ACTIVE THREADS END === [2026-10-21 13:07:50,734.734 INFO ] ================================================ [2026-10-21 13:07:50,750.750 INFO ] Launching Daemon at Wed Oct 21 13:07:50 IST 2026 [2026-10-21 13:07:50,761.761 INFO ] ================================================ [2026-10-21 13:07:51,440.440 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:07:51 [2026-10-21 13:07:52,142.142 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:07:52,455.455 INFO ] Initializing speech engine... [2026-10-21 13:07:52,469.469 INFO ] 2026-10-21 13:07:52 [2026-10-21 13:07:52,790.790 INFO ] 2026-10-21 13:07:52 [2026-10-21 13:07:52,876.876 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:07:53,095.095 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:07:53,104.104 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:07:53,301.301 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:07:53,321.321 INFO ] time= 21/10/2026 13:07:53 [2026-10-21 13:07:53,353.353 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:07:53,363.363 INFO ] Checking for existing commands in stream... [2026-10-21 13:07:53,500.500 INFO ] No existing commands found in stream [2026-10-21 13:07:58,531.531 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:07:58,535.535 INFO ] Waiting 0.99 seconds before fallback handling... [2026-10-21 13:08:00,051.051 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:08:00,055.055 INFO ] Checking for system updates... [2026-10-21 13:08:00,097.097 INFO ] 200 [2026-10-21 13:08:00,100.100 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:00,104.104 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:08:00,107.107 INFO ] Checking for camera pi updates... [2026-10-21 13:08:00,146.146 INFO ] 200 [2026-10-21 13:08:00,149.149 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:00,153.153 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:08:00,155.155 INFO ] Script finished. Safe exiting... [2026-10-21 13:08:00,158.158 INFO ] === ACTIVE THREADS START === [2026-10-21 13:08:00,165.165 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:08:00,171.171 INFO ] === ACTIVE THREADS END === [2026-10-21 13:08:02,214.214 INFO ] ================================================ [2026-10-21 13:08:02,234.234 INFO ] Launching Daemon at Wed Oct 21 13:08:02 IST 2026 [2026-10-21 13:08:02,251.251 INFO ] ================================================ [2026-10-21 13:08:02,904.904 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:08:02 [2026-10-21 13:08:03,572.572 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:08:03,860.860 INFO ] Initializing speech engine... [2026-10-21 13:08:03,882.882 INFO ] 2026-10-21 13:08:03 [2026-10-21 13:08:04,173.173 INFO ] 2026-10-21 13:08:04 [2026-10-21 13:08:04,225.225 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:08:04,451.451 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:08:04,462.462 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:08:04,609.609 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:08:04,669.669 INFO ] time= 21/10/2026 13:08:04 [2026-10-21 13:08:04,723.723 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:08:04,735.735 INFO ] Checking for existing commands in stream... [2026-10-21 13:08:04,879.879 INFO ] No existing commands found in stream [2026-10-21 13:08:09,896.896 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:08:09,899.899 INFO ] Waiting 3.72 seconds before fallback handling... [2026-10-21 13:08:14,137.137 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:08:14,140.140 INFO ] Checking for system updates... [2026-10-21 13:08:14,177.177 INFO ] 200 [2026-10-21 13:08:14,179.179 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:14,182.182 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:08:14,185.185 INFO ] Checking for camera pi updates... [2026-10-21 13:08:14,220.220 INFO ] 200 [2026-10-21 13:08:14,223.223 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:14,226.226 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:08:14,228.228 INFO ] Script finished. Safe exiting... [2026-10-21 13:08:14,231.231 INFO ] === ACTIVE THREADS START === [2026-10-21 13:08:14,237.237 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:08:14,243.243 INFO ] === ACTIVE THREADS END === [2026-10-21 13:08:16,282.282 INFO ] ================================================ [2026-10-21 13:08:16,297.297 INFO ] Launching Daemon at Wed Oct 21 13:08:16 IST 2026 [2026-10-21 13:08:16,307.307 INFO ] ================================================ [2026-10-21 13:08:16,879.879 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:08:16 [2026-10-21 13:08:17,469.469 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:08:17,753.753 INFO ] Initializing speech engine... [2026-10-21 13:08:17,759.759 INFO ] 2026-10-21 13:08:17 [2026-10-21 13:08:18,021.021 INFO ] 2026-10-21 13:08:18 [2026-10-21 13:08:18,055.055 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:08:18,309.309 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:08:18,318.318 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:08:18,531.531 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:08:18,583.583 INFO ] time= 21/10/2026 13:08:18 [2026-10-21 13:08:18,590.590 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:08:18,608.608 INFO ] Checking for existing commands in stream... [2026-10-21 13:08:18,731.731 INFO ] No existing commands found in stream [2026-10-21 13:08:23,753.753 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:08:23,756.756 INFO ] Waiting 0.84 seconds before fallback handling... [2026-10-21 13:08:25,069.069 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:08:25,072.072 INFO ] Checking for system updates... [2026-10-21 13:08:25,107.107 INFO ] 200 [2026-10-21 13:08:25,109.109 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:25,112.112 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:08:25,114.114 INFO ] Checking for camera pi updates... [2026-10-21 13:08:25,147.147 INFO ] 200 [2026-10-21 13:08:25,150.150 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:25,152.152 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:08:25,159.159 INFO ] Script finished. Safe exiting... [2026-10-21 13:08:25,161.161 INFO ] === ACTIVE THREADS START === [2026-10-21 13:08:25,166.166 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:08:25,171.171 INFO ] === ACTIVE THREADS END === [2026-10-21 13:08:27,211.211 INFO ] ================================================ [2026-10-21 13:08:27,226.226 INFO ] Launching Daemon at Wed Oct 21 13:08:27 IST 2026 [2026-10-21 13:08:27,238.238 INFO ] ================================================ [2026-10-21 13:08:27,828.828 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:08:27 [2026-10-21 13:08:28,432.432 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:08:28,708.708 INFO ] Initializing speech engine... [2026-10-21 13:08:28,719.719 INFO ] 2026-10-21 13:08:28 [2026-10-21 13:08:28,968.968 INFO ] 2026-10-21 13:08:28 [2026-10-21 13:08:29,035.035 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:08:29,259.259 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:08:29,268.268 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:08:29,511.511 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:08:29,530.530 INFO ] time= 21/10/2026 13:08:29 [2026-10-21 13:08:29,536.536 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:08:29,554.554 INFO ] Checking for existing commands in stream... [2026-10-21 13:08:29,682.682 INFO ] No existing commands found in stream [2026-10-21 13:08:34,696.696 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:08:34,699.699 INFO ] Waiting 0.30 seconds before fallback handling... [2026-10-21 13:08:35,495.495 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:08:35,498.498 INFO ] Checking for system updates... [2026-10-21 13:08:35,537.537 INFO ] 200 [2026-10-21 13:08:35,540.540 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:35,542.542 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:08:35,545.545 INFO ] Checking for camera pi updates... [2026-10-21 13:08:35,581.581 INFO ] 200 [2026-10-21 13:08:35,584.584 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:35,587.587 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:08:35,589.589 INFO ] Script finished. Safe exiting... [2026-10-21 13:08:35,591.591 INFO ] === ACTIVE THREADS START === [2026-10-21 13:08:35,597.597 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:08:35,602.602 INFO ] === ACTIVE THREADS END === [2026-10-21 13:08:37,642.642 INFO ] ================================================ [2026-10-21 13:08:37,658.658 INFO ] Launching Daemon at Wed Oct 21 13:08:37 IST 2026 [2026-10-21 13:08:37,669.669 INFO ] ================================================ [2026-10-21 13:08:38,259.259 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:08:38 [2026-10-21 13:08:38,857.857 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:08:39,114.114 INFO ] Initializing speech engine... [2026-10-21 13:08:39,123.123 INFO ] 2026-10-21 13:08:39 [2026-10-21 13:08:39,418.418 INFO ] 2026-10-21 13:08:39 [2026-10-21 13:08:39,456.456 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:08:39,681.681 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:08:39,688.688 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:08:39,911.911 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:08:39,928.928 INFO ] time= 21/10/2026 13:08:39 [2026-10-21 13:08:39,992.992 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:08:40,042.042 INFO ] Checking for existing commands in stream... [2026-10-21 13:08:40,197.197 INFO ] No existing commands found in stream [2026-10-21 13:08:45,214.214 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:08:45,217.217 INFO ] Waiting 2.54 seconds before fallback handling... [2026-10-21 13:08:48,269.269 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:08:48,272.272 INFO ] Checking for system updates... [2026-10-21 13:08:48,310.310 INFO ] 200 [2026-10-21 13:08:48,313.313 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:48,316.316 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:08:48,319.319 INFO ] Checking for camera pi updates... [2026-10-21 13:08:48,357.357 INFO ] 200 [2026-10-21 13:08:48,360.360 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:48,363.363 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:08:48,366.366 INFO ] Script finished. Safe exiting... [2026-10-21 13:08:48,369.369 INFO ] === ACTIVE THREADS START === [2026-10-21 13:08:48,375.375 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:08:48,381.381 INFO ] === ACTIVE THREADS END === [2026-10-21 13:08:50,421.421 INFO ] ================================================ [2026-10-21 13:08:50,436.436 INFO ] Launching Daemon at Wed Oct 21 13:08:50 IST 2026 [2026-10-21 13:08:50,447.447 INFO ] ================================================ [2026-10-21 13:08:51,035.035 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:08:51 [2026-10-21 13:08:51,643.643 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:08:51,909.909 INFO ] Initializing speech engine... [2026-10-21 13:08:51,916.916 INFO ] 2026-10-21 13:08:51 [2026-10-21 13:08:52,217.217 INFO ] 2026-10-21 13:08:52 [2026-10-21 13:08:52,256.256 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:08:52,455.455 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:08:52,471.471 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:08:52,639.639 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:08:52,645.645 INFO ] time= 21/10/2026 13:08:52 [2026-10-21 13:08:52,652.652 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:08:52,665.665 INFO ] Checking for existing commands in stream... [2026-10-21 13:08:52,823.823 INFO ] No existing commands found in stream [2026-10-21 13:08:57,849.849 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:08:57,852.852 INFO ] Waiting 0.40 seconds before fallback handling... [2026-10-21 13:08:58,759.759 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:08:58,762.762 INFO ] Checking for system updates... [2026-10-21 13:08:58,798.798 INFO ] 200 [2026-10-21 13:08:58,801.801 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:58,804.804 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:08:58,806.806 INFO ] Checking for camera pi updates... [2026-10-21 13:08:58,840.840 INFO ] 200 [2026-10-21 13:08:58,842.842 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:08:58,845.845 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:08:58,847.847 INFO ] Script finished. Safe exiting... [2026-10-21 13:08:58,850.850 INFO ] === ACTIVE THREADS START === [2026-10-21 13:08:58,855.855 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:08:58,860.860 INFO ] === ACTIVE THREADS END === [2026-10-21 13:09:00,900.900 INFO ] ================================================ [2026-10-21 13:09:00,915.915 INFO ] Launching Daemon at Wed Oct 21 13:09:00 IST 2026 [2026-10-21 13:09:00,926.926 INFO ] ================================================ [2026-10-21 13:09:01,508.508 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:09:01 [2026-10-21 13:09:02,212.212 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:09:02,601.601 INFO ] Initializing speech engine... [2026-10-21 13:09:02,615.615 INFO ] 2026-10-21 13:09:02 [2026-10-21 13:09:02,981.981 INFO ] 2026-10-21 13:09:02 [2026-10-21 13:09:03,070.070 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:09:03,240.240 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:09:03,265.265 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:09:03,428.428 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:09:03,506.506 INFO ] time= 21/10/2026 13:09:03 [2026-10-21 13:09:03,551.551 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:09:03,573.573 INFO ] Checking for existing commands in stream... [2026-10-21 13:09:03,719.719 INFO ] No existing commands found in stream [2026-10-21 13:09:08,735.735 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:09:08,737.737 INFO ] Waiting 2.26 seconds before fallback handling... [2026-10-21 13:09:11,568.568 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:09:11,571.571 INFO ] Checking for system updates... [2026-10-21 13:09:11,606.606 INFO ] 200 [2026-10-21 13:09:11,609.609 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:11,611.611 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:09:11,614.614 INFO ] Checking for camera pi updates... [2026-10-21 13:09:11,648.648 INFO ] 200 [2026-10-21 13:09:11,650.650 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:11,653.653 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:09:11,655.655 INFO ] Script finished. Safe exiting... [2026-10-21 13:09:11,657.657 INFO ] === ACTIVE THREADS START === [2026-10-21 13:09:11,663.663 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:09:11,668.668 INFO ] === ACTIVE THREADS END === [2026-10-21 13:09:13,708.708 INFO ] ================================================ [2026-10-21 13:09:13,724.724 INFO ] Launching Daemon at Wed Oct 21 13:09:13 IST 2026 [2026-10-21 13:09:13,735.735 INFO ] ================================================ [2026-10-21 13:09:14,311.311 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:09:14 [2026-10-21 13:09:14,905.905 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:09:15,153.153 INFO ] Initializing speech engine... [2026-10-21 13:09:15,168.168 INFO ] 2026-10-21 13:09:15 [2026-10-21 13:09:15,439.439 INFO ] 2026-10-21 13:09:15 [2026-10-21 13:09:15,472.472 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:09:15,662.662 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:09:15,681.681 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:09:15,882.882 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:09:15,888.888 INFO ] time= 21/10/2026 13:09:15 [2026-10-21 13:09:15,954.954 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:09:16,008.008 INFO ] Checking for existing commands in stream... [2026-10-21 13:09:16,153.153 INFO ] No existing commands found in stream [2026-10-21 13:09:21,173.173 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:09:21,176.176 INFO ] Waiting 2.10 seconds before fallback handling... [2026-10-21 13:09:23,852.852 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:09:23,856.856 INFO ] Checking for system updates... [2026-10-21 13:09:23,892.892 INFO ] 200 [2026-10-21 13:09:23,895.895 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:23,898.898 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:09:23,902.902 INFO ] Checking for camera pi updates... [2026-10-21 13:09:23,936.936 INFO ] 200 [2026-10-21 13:09:23,939.939 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:23,942.942 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:09:23,945.945 INFO ] Script finished. Safe exiting... [2026-10-21 13:09:23,948.948 INFO ] === ACTIVE THREADS START === [2026-10-21 13:09:23,954.954 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:09:23,960.960 INFO ] === ACTIVE THREADS END === [2026-10-21 13:09:26,002.002 INFO ] ================================================ [2026-10-21 13:09:26,017.017 INFO ] Launching Daemon at Wed Oct 21 13:09:26 IST 2026 [2026-10-21 13:09:26,028.028 INFO ] ================================================ [2026-10-21 13:09:26,692.692 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:09:26 [2026-10-21 13:09:27,334.334 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:09:27,616.616 INFO ] Initializing speech engine... [2026-10-21 13:09:27,626.626 INFO ] 2026-10-21 13:09:27 [2026-10-21 13:09:27,879.879 INFO ] 2026-10-21 13:09:27 [2026-10-21 13:09:27,921.921 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:09:28,136.136 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:09:28,183.183 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:09:28,400.400 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:09:28,449.449 INFO ] time= 21/10/2026 13:09:28 [2026-10-21 13:09:28,467.467 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:09:28,474.474 INFO ] Checking for existing commands in stream... [2026-10-21 13:09:28,601.601 INFO ] No existing commands found in stream [2026-10-21 13:09:33,616.616 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:09:33,619.619 INFO ] Waiting 2.57 seconds before fallback handling... [2026-10-21 13:09:36,700.700 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:09:36,702.702 INFO ] Checking for system updates... [2026-10-21 13:09:36,742.742 INFO ] 200 [2026-10-21 13:09:36,745.745 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:36,748.748 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:09:36,750.750 INFO ] Checking for camera pi updates... [2026-10-21 13:09:36,784.784 INFO ] 200 [2026-10-21 13:09:36,787.787 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:36,789.789 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:09:36,791.791 INFO ] Script finished. Safe exiting... [2026-10-21 13:09:36,794.794 INFO ] === ACTIVE THREADS START === [2026-10-21 13:09:36,800.800 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:09:36,805.805 INFO ] === ACTIVE THREADS END === [2026-10-21 13:09:38,846.846 INFO ] ================================================ [2026-10-21 13:09:38,861.861 INFO ] Launching Daemon at Wed Oct 21 13:09:38 IST 2026 [2026-10-21 13:09:38,872.872 INFO ] ================================================ [2026-10-21 13:09:39,445.445 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:09:39 [2026-10-21 13:09:40,040.040 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:09:40,316.316 INFO ] Initializing speech engine... [2026-10-21 13:09:40,325.325 INFO ] 2026-10-21 13:09:40 [2026-10-21 13:09:40,584.584 INFO ] 2026-10-21 13:09:40 [2026-10-21 13:09:40,638.638 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:09:40,867.867 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:09:40,873.873 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:09:41,112.112 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:09:41,133.133 INFO ] time= 21/10/2026 13:09:41 [2026-10-21 13:09:41,148.148 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:09:41,158.158 INFO ] Checking for existing commands in stream... [2026-10-21 13:09:41,283.283 INFO ] No existing commands found in stream [2026-10-21 13:09:46,297.297 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:09:46,300.300 INFO ] Waiting 2.30 seconds before fallback handling... [2026-10-21 13:09:49,216.216 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:09:49,219.219 INFO ] Checking for system updates... [2026-10-21 13:09:49,257.257 INFO ] 200 [2026-10-21 13:09:49,260.260 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:49,263.263 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:09:49,266.266 INFO ] Checking for camera pi updates... [2026-10-21 13:09:49,302.302 INFO ] 200 [2026-10-21 13:09:49,305.305 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:09:49,308.308 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:09:49,311.311 INFO ] Script finished. Safe exiting... [2026-10-21 13:09:49,314.314 INFO ] === ACTIVE THREADS START === [2026-10-21 13:09:49,320.320 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:09:49,328.328 INFO ] === ACTIVE THREADS END === [2026-10-21 13:09:51,369.369 INFO ] ================================================ [2026-10-21 13:09:51,385.385 INFO ] Launching Daemon at Wed Oct 21 13:09:51 IST 2026 [2026-10-21 13:09:51,395.395 INFO ] ================================================ [2026-10-21 13:09:51,990.990 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:09:51 [2026-10-21 13:09:52,602.602 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:09:52,881.881 INFO ] Initializing speech engine... [2026-10-21 13:09:52,891.891 INFO ] 2026-10-21 13:09:52 [2026-10-21 13:09:53,158.158 INFO ] 2026-10-21 13:09:53 [2026-10-21 13:09:53,212.212 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:09:53,443.443 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:09:53,449.449 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:09:53,667.667 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:09:53,708.708 INFO ] time= 21/10/2026 13:09:53 [2026-10-21 13:09:53,715.715 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:09:53,734.734 INFO ] Checking for existing commands in stream... [2026-10-21 13:09:53,889.889 INFO ] No existing commands found in stream [2026-10-21 13:09:58,915.915 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:09:58,918.918 INFO ] Waiting 3.41 seconds before fallback handling... [2026-10-21 13:10:02,896.896 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:10:02,901.901 INFO ] Checking for system updates... [2026-10-21 13:10:02,964.964 INFO ] 200 [2026-10-21 13:10:02,969.969 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:02,974.974 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:10:02,978.978 INFO ] Checking for camera pi updates... [2026-10-21 13:10:03,018.018 INFO ] 200 [2026-10-21 13:10:03,023.023 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:03,028.028 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:10:03,032.032 INFO ] Script finished. Safe exiting... [2026-10-21 13:10:03,036.036 INFO ] === ACTIVE THREADS START === [2026-10-21 13:10:03,045.045 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:10:03,061.061 INFO ] === ACTIVE THREADS END === [2026-10-21 13:10:05,104.104 INFO ] ================================================ [2026-10-21 13:10:05,119.119 INFO ] Launching Daemon at Wed Oct 21 13:10:05 IST 2026 [2026-10-21 13:10:05,130.130 INFO ] ================================================ [2026-10-21 13:10:05,704.704 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:10:05 [2026-10-21 13:10:06,298.298 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:10:06,555.555 INFO ] Initializing speech engine... [2026-10-21 13:10:06,578.578 INFO ] 2026-10-21 13:10:06 [2026-10-21 13:10:06,840.840 INFO ] 2026-10-21 13:10:06 [2026-10-21 13:10:06,875.875 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:10:07,084.084 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:10:07,144.144 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:10:07,288.288 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:10:07,320.320 INFO ] time= 21/10/2026 13:10:07 [2026-10-21 13:10:07,369.369 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:10:07,419.419 INFO ] Checking for existing commands in stream... [2026-10-21 13:10:07,579.579 INFO ] No existing commands found in stream [2026-10-21 13:10:12,593.593 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:10:12,596.596 INFO ] Waiting 3.71 seconds before fallback handling... [2026-10-21 13:10:16,831.831 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:10:16,834.834 INFO ] Checking for system updates... [2026-10-21 13:10:16,873.873 INFO ] 200 [2026-10-21 13:10:16,876.876 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:16,878.878 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:10:16,881.881 INFO ] Checking for camera pi updates... [2026-10-21 13:10:16,918.918 INFO ] 200 [2026-10-21 13:10:16,921.921 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:16,923.923 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:10:16,926.926 INFO ] Script finished. Safe exiting... [2026-10-21 13:10:16,928.928 INFO ] === ACTIVE THREADS START === [2026-10-21 13:10:16,934.934 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:10:16,939.939 INFO ] === ACTIVE THREADS END === [2026-10-21 13:10:18,979.979 INFO ] ================================================ [2026-10-21 13:10:19,995.995 INFO ] Launching Daemon at Wed Oct 21 13:10:18 IST 2026 [2026-10-21 13:10:19,006.006 INFO ] ================================================ [2026-10-21 13:10:19,585.585 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:10:19 [2026-10-21 13:10:20,178.178 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:10:20,456.456 INFO ] Initializing speech engine... [2026-10-21 13:10:20,465.465 INFO ] 2026-10-21 13:10:20 [2026-10-21 13:10:20,725.725 INFO ] 2026-10-21 13:10:20 [2026-10-21 13:10:20,756.756 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:10:21,002.002 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:10:21,012.012 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:10:21,148.148 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:10:21,187.187 INFO ] time= 21/10/2026 13:10:21 [2026-10-21 13:10:21,241.241 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:10:21,282.282 INFO ] Checking for existing commands in stream... [2026-10-21 13:10:21,410.410 INFO ] No existing commands found in stream [2026-10-21 13:10:26,435.435 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:10:26,438.438 INFO ] Waiting 3.18 seconds before fallback handling... [2026-10-21 13:10:30,106.106 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:10:30,108.108 INFO ] Checking for system updates... [2026-10-21 13:10:30,145.145 INFO ] 200 [2026-10-21 13:10:30,147.147 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:30,150.150 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:10:30,152.152 INFO ] Checking for camera pi updates... [2026-10-21 13:10:30,186.186 INFO ] 200 [2026-10-21 13:10:30,189.189 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:30,191.191 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:10:30,194.194 INFO ] Script finished. Safe exiting... [2026-10-21 13:10:30,196.196 INFO ] === ACTIVE THREADS START === [2026-10-21 13:10:30,201.201 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:10:30,207.207 INFO ] === ACTIVE THREADS END === [2026-10-21 13:10:32,249.249 INFO ] ================================================ [2026-10-21 13:10:32,266.266 INFO ] Launching Daemon at Wed Oct 21 13:10:32 IST 2026 [2026-10-21 13:10:32,278.278 INFO ] ================================================ [2026-10-21 13:10:32,899.899 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:10:32 [2026-10-21 13:10:33,491.491 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:10:33,764.764 INFO ] Initializing speech engine... [2026-10-21 13:10:33,773.773 INFO ] 2026-10-21 13:10:33 [2026-10-21 13:10:34,020.020 INFO ] 2026-10-21 13:10:34 [2026-10-21 13:10:34,057.057 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:10:34,310.310 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:10:34,319.319 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:10:34,541.541 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:10:34,581.581 INFO ] time= 21/10/2026 13:10:34 [2026-10-21 13:10:34,587.587 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:10:34,604.604 INFO ] Checking for existing commands in stream... [2026-10-21 13:10:34,737.737 INFO ] No existing commands found in stream [2026-10-21 13:10:39,756.756 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:10:39,759.759 INFO ] Waiting 2.18 seconds before fallback handling... [2026-10-21 13:10:42,449.449 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:10:42,452.452 INFO ] Checking for system updates... [2026-10-21 13:10:42,493.493 INFO ] 200 [2026-10-21 13:10:42,496.496 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:42,500.500 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:10:42,503.503 INFO ] Checking for camera pi updates... [2026-10-21 13:10:42,538.538 INFO ] 200 [2026-10-21 13:10:42,540.540 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:42,543.543 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:10:42,546.546 INFO ] Script finished. Safe exiting... [2026-10-21 13:10:42,549.549 INFO ] === ACTIVE THREADS START === [2026-10-21 13:10:42,556.556 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:10:42,561.561 INFO ] === ACTIVE THREADS END === [2026-10-21 13:10:44,602.602 INFO ] ================================================ [2026-10-21 13:10:44,617.617 INFO ] Launching Daemon at Wed Oct 21 13:10:44 IST 2026 [2026-10-21 13:10:44,628.628 INFO ] ================================================ [2026-10-21 13:10:45,198.198 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:10:45 [2026-10-21 13:10:45,783.783 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:10:46,054.054 INFO ] Initializing speech engine... [2026-10-21 13:10:46,064.064 INFO ] 2026-10-21 13:10:46 [2026-10-21 13:10:46,312.312 INFO ] 2026-10-21 13:10:46 [2026-10-21 13:10:46,347.347 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:10:46,542.542 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:10:46,550.550 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:10:46,743.743 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:10:46,780.780 INFO ] time= 21/10/2026 13:10:46 [2026-10-21 13:10:46,840.840 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:10:46,879.879 INFO ] Checking for existing commands in stream... [2026-10-21 13:10:47,013.013 INFO ] No existing commands found in stream [2026-10-21 13:10:52,035.035 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:10:52,038.038 INFO ] Waiting 3.63 seconds before fallback handling... [2026-10-21 13:10:56,186.186 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:10:56,189.189 INFO ] Checking for system updates... [2026-10-21 13:10:56,227.227 INFO ] 200 [2026-10-21 13:10:56,229.229 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:56,232.232 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:10:56,234.234 INFO ] Checking for camera pi updates... [2026-10-21 13:10:56,268.268 INFO ] 200 [2026-10-21 13:10:56,270.270 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:10:56,273.273 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:10:56,275.275 INFO ] Script finished. Safe exiting... [2026-10-21 13:10:56,277.277 INFO ] === ACTIVE THREADS START === [2026-10-21 13:10:56,283.283 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:10:56,288.288 INFO ] === ACTIVE THREADS END === [2026-10-21 13:10:58,327.327 INFO ] ================================================ [2026-10-21 13:10:58,343.343 INFO ] Launching Daemon at Wed Oct 21 13:10:58 IST 2026 [2026-10-21 13:10:58,479.479 INFO ] ================================================ [2026-10-21 13:10:59,059.059 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:10:59 [2026-10-21 13:10:59,654.654 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:10:59,907.907 INFO ] Initializing speech engine... [2026-10-21 13:10:59,930.930 INFO ] 2026-10-21 13:10:59 [2026-10-21 13:11:00,186.186 INFO ] 2026-10-21 13:11:00 [2026-10-21 13:11:00,221.221 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:11:00,416.416 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:11:00,465.465 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:11:00,636.636 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:11:00,691.691 INFO ] time= 21/10/2026 13:11:00 [2026-10-21 13:11:00,748.748 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:11:00,755.755 INFO ] Checking for existing commands in stream... [2026-10-21 13:11:00,902.902 INFO ] No existing commands found in stream [2026-10-21 13:11:05,917.917 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:11:05,920.920 INFO ] Waiting 3.62 seconds before fallback handling... [2026-10-21 13:11:10,003.003 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:11:10,006.006 INFO ] Checking for system updates... [2026-10-21 13:11:10,041.041 INFO ] 200 [2026-10-21 13:11:10,043.043 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:11:10,046.046 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:11:10,048.048 INFO ] Checking for camera pi updates... [2026-10-21 13:11:10,086.086 INFO ] 200 [2026-10-21 13:11:10,088.088 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:11:10,091.091 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:11:10,094.094 INFO ] Script finished. Safe exiting... [2026-10-21 13:11:10,096.096 INFO ] === ACTIVE THREADS START === [2026-10-21 13:11:10,101.101 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:11:10,107.107 INFO ] === ACTIVE THREADS END === [2026-10-21 13:11:12,147.147 INFO ] ================================================ [2026-10-21 13:11:12,162.162 INFO ] Launching Daemon at Wed Oct 21 13:11:12 IST 2026 [2026-10-21 13:11:12,173.173 INFO ] ================================================ [2026-10-21 13:11:12,796.796 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:11:12 [2026-10-21 13:11:13,403.403 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:11:13,684.684 INFO ] Initializing speech engine... [2026-10-21 13:11:13,691.691 INFO ] 2026-10-21 13:11:13 [2026-10-21 13:11:13,954.954 INFO ] 2026-10-21 13:11:13 [2026-10-21 13:11:13,984.984 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:11:14,236.236 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:11:14,242.242 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:11:14,481.481 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:11:14,503.503 INFO ] time= 21/10/2026 13:11:14 [2026-10-21 13:11:14,520.520 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:11:14,544.544 INFO ] Checking for existing commands in stream... [2026-10-21 13:11:14,683.683 INFO ] No existing commands found in stream [2026-10-21 13:11:19,713.713 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:11:19,716.716 INFO ] Waiting 1.31 seconds before fallback handling... [2026-10-21 13:11:21,514.514 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:11:21,517.517 INFO ] Checking for system updates... [2026-10-21 13:11:21,556.556 INFO ] 200 [2026-10-21 13:11:21,559.559 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:11:21,562.562 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:11:21,564.564 INFO ] Checking for camera pi updates... [2026-10-21 13:11:21,597.597 INFO ] 200 [2026-10-21 13:11:21,600.600 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:11:21,603.603 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:11:21,605.605 INFO ] Script finished. Safe exiting... [2026-10-21 13:11:21,608.608 INFO ] === ACTIVE THREADS START === [2026-10-21 13:11:21,613.613 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:11:21,618.618 INFO ] === ACTIVE THREADS END === [2026-10-21 13:11:23,657.657 INFO ] ================================================ [2026-10-21 13:11:23,672.672 INFO ] Launching Daemon at Wed Oct 21 13:11:23 IST 2026 [2026-10-21 13:11:23,683.683 INFO ] ================================================ [2026-10-21 13:11:24,255.255 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:11:24 [2026-10-21 13:11:24,842.842 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:11:25,118.118 INFO ] Initializing speech engine... [2026-10-21 13:11:25,125.125 INFO ] 2026-10-21 13:11:25 [2026-10-21 13:11:25,377.377 INFO ] 2026-10-21 13:11:25 [2026-10-21 13:11:25,414.414 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:11:25,616.616 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:11:25,672.672 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:11:25,819.819 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:11:25,875.875 INFO ] time= 21/10/2026 13:11:25 [2026-10-21 13:11:25,929.929 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:11:25,954.954 INFO ] Checking for existing commands in stream... [2026-10-21 13:11:26,085.085 INFO ] No existing commands found in stream [2026-10-21 13:11:31,111.111 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:11:31,114.114 INFO ] Waiting 0.63 seconds before fallback handling... [2026-10-21 13:11:32,218.218 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:11:32,221.221 INFO ] Checking for system updates... [2026-10-21 13:11:32,259.259 INFO ] 200 [2026-10-21 13:11:32,262.262 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:11:32,264.264 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:11:32,267.267 INFO ] Checking for camera pi updates... [2026-10-21 13:11:32,303.303 INFO ] 200 [2026-10-21 13:11:32,306.306 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:11:32,309.309 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:11:32,312.312 INFO ] Script finished. Safe exiting... [2026-10-21 13:11:32,315.315 INFO ] === ACTIVE THREADS START === [2026-10-21 13:11:32,322.322 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:11:32,328.328 INFO ] === ACTIVE THREADS END === [2026-10-21 13:11:34,370.370 INFO ] ================================================ [2026-10-21 13:11:34,385.385 INFO ] Launching Daemon at Wed Oct 21 13:11:34 IST 2026 [2026-10-21 13:11:34,396.396 INFO ] ================================================ [2026-10-21 13:11:35,030.030 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:11:35 [2026-10-21 13:11:35,679.679 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:11:35,971.971 INFO ] Initializing speech engine... [2026-10-21 13:11:35,981.981 INFO ] 2026-10-21 13:11:35 [2026-10-21 13:11:36,253.253 INFO ] 2026-10-21 13:11:36 [2026-10-21 13:11:36,288.288 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:11:36,546.546 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:11:36,551.551 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:11:36,696.696 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:11:36,756.756 INFO ] time= 21/10/2026 13:11:36 [2026-10-21 13:11:36,815.815 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:11:36,829.829 INFO ] Checking for existing commands in stream... [2026-10-21 13:11:36,976.976 INFO ] No existing commands found in stream [2026-10-21 13:12:31,599.599 INFO ] ================================================ [2026-10-21 13:12:31,673.673 INFO ] Launching Daemon at Wed Oct 21 13:12:31 IST 2026 [2026-10-21 13:12:31,734.734 INFO ] ================================================ [2026-10-21 13:12:33,840.840 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:12:33 [2026-10-21 13:12:35,352.352 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:12:35,780.780 INFO ] Initializing speech engine... [2026-10-21 13:12:35,786.786 INFO ] 2026-10-21 13:12:35 [2026-10-21 13:12:36,458.458 INFO ] 2026-10-21 13:12:36 [2026-10-21 13:12:36,857.857 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:12:37,193.193 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:12:37,204.204 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:12:37,391.391 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:12:37,394.394 INFO ] time= 21/10/2026 13:12:37 [2026-10-21 13:12:37,407.407 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:12:37,448.448 INFO ] Checking for existing commands in stream... [2026-10-21 13:12:37,581.581 INFO ] No existing commands found in stream [2026-10-21 13:12:42,604.604 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:12:42,607.607 INFO ] Waiting 1.89 seconds before fallback handling... [2026-10-21 13:12:45,002.002 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:12:45,004.004 INFO ] Checking for system updates... [2026-10-21 13:12:45,042.042 INFO ] 200 [2026-10-21 13:12:45,044.044 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:12:45,047.047 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:12:45,049.049 INFO ] Checking for camera pi updates... [2026-10-21 13:12:45,086.086 INFO ] 200 [2026-10-21 13:12:45,088.088 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:12:45,090.090 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:12:45,093.093 INFO ] Script finished. Safe exiting... [2026-10-21 13:12:45,095.095 INFO ] === ACTIVE THREADS START === [2026-10-21 13:12:45,100.100 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:12:45,105.105 INFO ] === ACTIVE THREADS END === [2026-10-21 13:12:47,145.145 INFO ] ================================================ [2026-10-21 13:12:47,160.160 INFO ] Launching Daemon at Wed Oct 21 13:12:47 IST 2026 [2026-10-21 13:12:47,171.171 INFO ] ================================================ [2026-10-21 13:12:47,745.745 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:12:47 [2026-10-21 13:12:48,346.346 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:12:48,622.622 INFO ] Initializing speech engine... [2026-10-21 13:12:48,630.630 INFO ] 2026-10-21 13:12:48 [2026-10-21 13:12:48,895.895 INFO ] 2026-10-21 13:12:48 [2026-10-21 13:12:48,932.932 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:12:49,124.124 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:12:49,169.169 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:12:49,385.385 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:12:49,441.441 INFO ] time= 21/10/2026 13:12:49 [2026-10-21 13:12:49,457.457 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:12:49,472.472 INFO ] Checking for existing commands in stream... [2026-10-21 13:12:49,602.602 INFO ] No existing commands found in stream [2026-10-21 13:12:54,617.617 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:12:54,620.620 INFO ] Waiting 1.99 seconds before fallback handling... [2026-10-21 13:12:57,139.139 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:12:57,145.145 INFO ] Checking for system updates... [2026-10-21 13:12:57,202.202 INFO ] 200 [2026-10-21 13:12:57,206.206 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:12:57,209.209 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:12:57,217.217 INFO ] Checking for camera pi updates... [2026-10-21 13:12:57,260.260 INFO ] 200 [2026-10-21 13:12:57,263.263 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:12:57,266.266 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:12:57,269.269 INFO ] Script finished. Safe exiting... [2026-10-21 13:12:57,272.272 INFO ] === ACTIVE THREADS START === [2026-10-21 13:12:57,280.280 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:12:57,287.287 INFO ] === ACTIVE THREADS END === [2026-10-21 13:12:59,338.338 INFO ] ================================================ [2026-10-21 13:12:59,355.355 INFO ] Launching Daemon at Wed Oct 21 13:12:59 IST 2026 [2026-10-21 13:12:59,367.367 INFO ] ================================================ [2026-10-21 13:12:59,997.997 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:12:59 [2026-10-21 13:13:00,650.650 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:13:00,908.908 INFO ] Initializing speech engine... [2026-10-21 13:13:00,924.924 INFO ] 2026-10-21 13:13:00 [2026-10-21 13:13:01,194.194 INFO ] 2026-10-21 13:13:01 [2026-10-21 13:13:01,234.234 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:13:01,491.491 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:13:01,502.502 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:13:01,703.703 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:13:01,706.706 INFO ] time= 21/10/2026 13:13:01 [2026-10-21 13:13:01,724.724 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:13:01,729.729 INFO ] Checking for existing commands in stream... [2026-10-21 13:13:01,812.812 INFO ] No existing commands found in stream [2026-10-21 13:13:06,823.823 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:13:06,826.826 INFO ] Waiting 0.40 seconds before fallback handling... [2026-10-21 13:13:07,754.754 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:13:07,757.757 INFO ] Checking for system updates... [2026-10-21 13:13:07,798.798 INFO ] 200 [2026-10-21 13:13:07,802.802 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:13:07,806.806 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:13:07,809.809 INFO ] Checking for camera pi updates... [2026-10-21 13:13:07,855.855 INFO ] 200 [2026-10-21 13:13:07,858.858 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:13:07,862.862 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:13:07,865.865 INFO ] Script finished. Safe exiting... [2026-10-21 13:13:07,869.869 INFO ] === ACTIVE THREADS START === [2026-10-21 13:13:07,876.876 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:13:07,884.884 INFO ] === ACTIVE THREADS END === [2026-10-21 13:13:09,928.928 INFO ] ================================================ [2026-10-21 13:13:09,945.945 INFO ] Launching Daemon at Wed Oct 21 13:13:09 IST 2026 [2026-10-21 13:13:09,956.956 INFO ] ================================================ [2026-10-21 13:13:10,529.529 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:13:10 [2026-10-21 13:13:11,116.116 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:13:11,390.390 INFO ] Initializing speech engine... [2026-10-21 13:13:11,397.397 INFO ] 2026-10-21 13:13:11 [2026-10-21 13:13:11,652.652 INFO ] 2026-10-21 13:13:11 [2026-10-21 13:13:11,718.718 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:13:11,948.948 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:13:11,957.957 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:13:12,098.098 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:13:12,153.153 INFO ] time= 21/10/2026 13:13:12 [2026-10-21 13:13:12,208.208 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:13:12,237.237 INFO ] Checking for existing commands in stream... [2026-10-21 13:13:12,386.386 INFO ] No existing commands found in stream [2026-10-21 13:13:17,402.402 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:13:17,404.404 INFO ] Waiting 3.47 seconds before fallback handling... [2026-10-21 13:13:21,357.357 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:13:21,360.360 INFO ] Checking for system updates... [2026-10-21 13:13:21,398.398 INFO ] 200 [2026-10-21 13:13:21,400.400 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:13:21,403.403 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping update check [2026-10-21 13:13:21,410.410 INFO ] Checking for camera pi updates... [2026-10-21 13:13:21,444.444 INFO ] 200 [2026-10-21 13:13:21,446.446 INFO ] {"status": true, "state": "STATE_ON_BATTERY", "msg": "Status of machine"} [2026-10-21 13:13:21,448.448 INFO ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check [2026-10-21 13:13:21,451.451 INFO ] Script finished. Safe exiting... [2026-10-21 13:13:21,453.453 INFO ] === ACTIVE THREADS START === [2026-10-21 13:13:21,459.459 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:13:21,464.464 INFO ] === ACTIVE THREADS END === [2026-10-21 13:13:23,504.504 INFO ] ================================================ [2026-10-21 13:13:23,519.519 INFO ] Launching Daemon at Wed Oct 21 13:13:23 IST 2026 [2026-10-21 13:13:23,530.530 INFO ] ================================================ [2026-10-21 13:13:24,199.199 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:13:24 [2026-10-21 13:13:24,793.793 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:13:25,067.067 INFO ] Initializing speech engine... [2026-10-21 13:13:25,076.076 INFO ] 2026-10-21 13:13:25 [2026-10-21 13:13:25,329.329 INFO ] 2026-10-21 13:13:25 [2026-10-21 13:13:25,366.366 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:13:25,569.569 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:13:25,611.611 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:13:25,765.765 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:13:25,768.768 INFO ] time= 21/10/2026 13:13:25 [2026-10-21 13:13:25,770.770 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:13:25,782.782 INFO ] Checking for existing commands in stream... [2026-10-21 13:13:25,909.909 INFO ] No existing commands found in stream [2026-10-21 13:13:30,920.920 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:13:30,923.923 INFO ] Waiting 2.03 seconds before fallback handling... [2026-10-21 13:13:33,463.463 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:13:33,465.465 INFO ] Checking for system updates... [2026-10-21 13:13:33,506.506 INFO ] 200 [2026-10-21 13:13:33,508.508 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:13:33,569.569 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:13:33,571.571 INFO ] No update needed [2026-10-21 13:13:33,574.574 INFO ] Checking for camera pi updates... [2026-10-21 13:13:33,607.607 INFO ] 200 [2026-10-21 13:13:33,609.609 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:13:33,651.651 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:13:43,665.665 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:13:43,715.715 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:13:43,725.725 INFO ] Script finished. Safe exiting... [2026-10-21 13:13:43,727.727 INFO ] === ACTIVE THREADS START === [2026-10-21 13:13:43,732.732 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:13:43,737.737 INFO ] === ACTIVE THREADS END === [2026-10-21 13:13:45,777.777 INFO ] ================================================ [2026-10-21 13:13:45,793.793 INFO ] Launching Daemon at Wed Oct 21 13:13:45 IST 2026 [2026-10-21 13:13:45,803.803 INFO ] ================================================ [2026-10-21 13:13:46,387.387 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:13:46 [2026-10-21 13:13:46,983.983 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:13:47,296.296 INFO ] Initializing speech engine... [2026-10-21 13:13:47,309.309 INFO ] 2026-10-21 13:13:47 [2026-10-21 13:13:47,618.618 INFO ] 2026-10-21 13:13:47 [2026-10-21 13:13:47,704.704 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:13:47,930.930 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:13:47,986.986 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:13:48,139.139 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:13:48,168.168 INFO ] time= 21/10/2026 13:13:48 [2026-10-21 13:13:48,177.177 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:13:48,187.187 INFO ] Checking for existing commands in stream... [2026-10-21 13:13:48,334.334 INFO ] No existing commands found in stream [2026-10-21 13:13:53,365.365 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:13:53,368.368 INFO ] Waiting 0.96 seconds before fallback handling... [2026-10-21 13:13:54,822.822 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:13:54,825.825 INFO ] Checking for system updates... [2026-10-21 13:13:54,862.862 INFO ] 200 [2026-10-21 13:13:54,864.864 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:13:54,925.925 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:13:54,927.927 INFO ] No update needed [2026-10-21 13:13:54,929.929 INFO ] Checking for camera pi updates... [2026-10-21 13:13:54,963.963 INFO ] 200 [2026-10-21 13:13:54,966.966 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:13:55,012.012 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:14:05,023.023 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:14:05,058.058 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:14:05,068.068 INFO ] Script finished. Safe exiting... [2026-10-21 13:14:05,070.070 INFO ] === ACTIVE THREADS START === [2026-10-21 13:14:05,076.076 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:14:05,081.081 INFO ] === ACTIVE THREADS END === [2026-10-21 13:14:07,120.120 INFO ] ================================================ [2026-10-21 13:14:07,135.135 INFO ] Launching Daemon at Wed Oct 21 13:14:07 IST 2026 [2026-10-21 13:14:07,146.146 INFO ] ================================================ [2026-10-21 13:14:07,731.731 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:14:07 [2026-10-21 13:14:08,329.329 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:14:08,608.608 INFO ] Initializing speech engine... [2026-10-21 13:14:08,615.615 INFO ] 2026-10-21 13:14:08 [2026-10-21 13:14:08,865.865 INFO ] 2026-10-21 13:14:08 [2026-10-21 13:14:08,902.902 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:14:09,157.157 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:14:09,167.167 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:14:09,308.308 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:14:09,368.368 INFO ] time= 21/10/2026 13:14:09 [2026-10-21 13:14:09,427.427 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:14:09,437.437 INFO ] Checking for existing commands in stream... [2026-10-21 13:14:09,581.581 INFO ] No existing commands found in stream [2026-10-21 13:14:14,594.594 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:14:14,596.596 INFO ] Waiting 0.30 seconds before fallback handling... [2026-10-21 13:14:15,374.374 INFO ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}} [2026-10-21 13:14:15,377.377 INFO ] Checking for system updates... [2026-10-21 13:14:15,412.412 INFO ] 200 [2026-10-21 13:14:15,415.415 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:14:15,472.472 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:14:15,475.475 INFO ] No update needed [2026-10-21 13:14:15,477.477 INFO ] Checking for camera pi updates... [2026-10-21 13:14:15,510.510 INFO ] 200 [2026-10-21 13:14:15,513.513 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:14:15,553.553 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:14:25,566.566 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:14:25,601.601 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:14:25,611.611 INFO ] Script finished. Safe exiting... [2026-10-21 13:14:25,614.614 INFO ] === ACTIVE THREADS START === [2026-10-21 13:14:25,619.619 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:14:25,624.624 INFO ] === ACTIVE THREADS END === [2026-10-21 13:14:27,664.664 INFO ] ================================================ [2026-10-21 13:14:27,680.680 INFO ] Launching Daemon at Wed Oct 21 13:14:27 IST 2026 [2026-10-21 13:14:27,690.690 INFO ] ================================================ [2026-10-21 13:14:28,262.262 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:14:28 [2026-10-21 13:14:28,853.853 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:14:29,109.109 INFO ] Initializing speech engine... [2026-10-21 13:14:29,119.119 INFO ] 2026-10-21 13:14:29 [2026-10-21 13:14:29,411.411 INFO ] 2026-10-21 13:14:29 [2026-10-21 13:14:29,449.449 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:14:29,669.669 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:14:29,678.678 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:14:29,887.887 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:14:29,902.902 INFO ] time= 21/10/2026 13:14:29 [2026-10-21 13:14:29,961.961 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:14:30,010.010 INFO ] Checking for existing commands in stream... [2026-10-21 13:14:30,099.099 INFO ] No existing commands found in stream [2026-10-21 13:14:35,111.111 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:14:35,114.114 INFO ] Waiting 0.99 seconds before fallback handling... [2026-10-21 13:14:36,601.601 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:14:36,604.604 INFO ] Checking for system updates... [2026-10-21 13:14:36,640.640 INFO ] 200 [2026-10-21 13:14:36,643.643 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:14:36,699.699 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:14:36,701.701 INFO ] No update needed [2026-10-21 13:14:36,704.704 INFO ] Checking for camera pi updates... [2026-10-21 13:14:36,743.743 INFO ] 200 [2026-10-21 13:14:36,745.745 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:14:36,785.785 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:14:46,800.800 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:14:46,835.835 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:14:46,845.845 INFO ] Script finished. Safe exiting... [2026-10-21 13:14:46,847.847 INFO ] === ACTIVE THREADS START === [2026-10-21 13:14:46,853.853 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:14:46,858.858 INFO ] === ACTIVE THREADS END === [2026-10-21 13:14:48,897.897 INFO ] ================================================ [2026-10-21 13:14:48,912.912 INFO ] Launching Daemon at Wed Oct 21 13:14:48 IST 2026 [2026-10-21 13:14:48,923.923 INFO ] ================================================ [2026-10-21 13:14:49,490.490 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:14:49 [2026-10-21 13:14:50,095.095 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:14:50,350.350 INFO ] Initializing speech engine... [2026-10-21 13:14:50,358.358 INFO ] 2026-10-21 13:14:50 [2026-10-21 13:14:50,653.653 INFO ] 2026-10-21 13:14:50 [2026-10-21 13:14:50,679.679 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:14:50,887.887 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:14:50,905.905 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:14:51,060.060 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:14:51,071.071 INFO ] time= 21/10/2026 13:14:51 [2026-10-21 13:14:51,076.076 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:14:51,082.082 INFO ] Checking for existing commands in stream... [2026-10-21 13:14:51,168.168 INFO ] No existing commands found in stream [2026-10-21 13:14:56,203.203 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:14:56,206.206 INFO ] Waiting 0.53 seconds before fallback handling... [2026-10-21 13:14:57,207.207 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:14:57,210.210 INFO ] Checking for system updates... [2026-10-21 13:14:57,248.248 INFO ] 200 [2026-10-21 13:14:57,251.251 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:14:57,328.328 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:14:57,330.330 INFO ] No update needed [2026-10-21 13:14:57,333.333 INFO ] Checking for camera pi updates... [2026-10-21 13:14:57,366.366 INFO ] 200 [2026-10-21 13:14:57,368.368 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:14:57,414.414 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:15:07,428.428 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:15:07,464.464 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:15:07,474.474 INFO ] Script finished. Safe exiting... [2026-10-21 13:15:07,477.477 INFO ] === ACTIVE THREADS START === [2026-10-21 13:15:07,482.482 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:15:07,487.487 INFO ] === ACTIVE THREADS END === [2026-10-21 13:15:09,526.526 INFO ] ================================================ [2026-10-21 13:15:09,541.541 INFO ] Launching Daemon at Wed Oct 21 13:15:09 IST 2026 [2026-10-21 13:15:09,552.552 INFO ] ================================================ [2026-10-21 13:15:10,148.148 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:15:10 [2026-10-21 13:15:10,817.817 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:15:11,094.094 INFO ] Initializing speech engine... [2026-10-21 13:15:11,104.104 INFO ] 2026-10-21 13:15:11 [2026-10-21 13:15:11,371.371 INFO ] 2026-10-21 13:15:11 [2026-10-21 13:15:11,425.425 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:15:11,648.648 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:15:11,658.658 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:15:11,861.861 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:15:11,917.917 INFO ] time= 21/10/2026 13:15:11 [2026-10-21 13:15:11,924.924 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:15:11,941.941 INFO ] Checking for existing commands in stream... [2026-10-21 13:15:12,068.068 INFO ] No existing commands found in stream [2026-10-21 13:15:17,084.084 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:15:17,087.087 INFO ] Waiting 1.52 seconds before fallback handling... [2026-10-21 13:15:19,195.195 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:15:19,198.198 INFO ] Checking for system updates... [2026-10-21 13:15:19,234.234 INFO ] 200 [2026-10-21 13:15:19,236.236 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:15:19,289.289 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:15:19,292.292 INFO ] No update needed [2026-10-21 13:15:19,294.294 INFO ] Checking for camera pi updates... [2026-10-21 13:15:19,327.327 INFO ] 200 [2026-10-21 13:15:19,330.330 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:15:19,370.370 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:15:29,383.383 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:15:29,418.418 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:15:29,428.428 INFO ] Script finished. Safe exiting... [2026-10-21 13:15:29,430.430 INFO ] === ACTIVE THREADS START === [2026-10-21 13:15:29,435.435 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:15:29,440.440 INFO ] === ACTIVE THREADS END === [2026-10-21 13:15:31,480.480 INFO ] ================================================ [2026-10-21 13:15:31,495.495 INFO ] Launching Daemon at Wed Oct 21 13:15:31 IST 2026 [2026-10-21 13:15:31,506.506 INFO ] ================================================ [2026-10-21 13:15:32,102.102 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:15:32 [2026-10-21 13:15:32,736.736 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:15:33,056.056 INFO ] Initializing speech engine... [2026-10-21 13:15:33,062.062 INFO ] 2026-10-21 13:15:33 [2026-10-21 13:15:33,350.350 INFO ] 2026-10-21 13:15:33 [2026-10-21 13:15:33,386.386 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:15:33,638.638 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:15:33,647.647 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:15:33,858.858 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:15:33,907.907 INFO ] time= 21/10/2026 13:15:33 [2026-10-21 13:15:33,913.913 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:15:33,930.930 INFO ] Checking for existing commands in stream... [2026-10-21 13:15:34,063.063 INFO ] No existing commands found in stream [2026-10-21 13:15:39,092.092 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:15:39,095.095 INFO ] Waiting 1.45 seconds before fallback handling... [2026-10-21 13:15:41,111.111 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:15:41,114.114 INFO ] Checking for system updates... [2026-10-21 13:15:41,149.149 INFO ] 200 [2026-10-21 13:15:41,152.152 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:15:41,204.204 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:15:41,207.207 INFO ] No update needed [2026-10-21 13:15:41,209.209 INFO ] Checking for camera pi updates... [2026-10-21 13:15:41,249.249 INFO ] 200 [2026-10-21 13:15:41,251.251 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:15:41,296.296 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:15:51,309.309 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:15:51,345.345 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:15:51,354.354 INFO ] Script finished. Safe exiting... [2026-10-21 13:15:51,357.357 INFO ] === ACTIVE THREADS START === [2026-10-21 13:15:51,362.362 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:15:51,367.367 INFO ] === ACTIVE THREADS END === [2026-10-21 13:15:53,407.407 INFO ] ================================================ [2026-10-21 13:15:53,422.422 INFO ] Launching Daemon at Wed Oct 21 13:15:53 IST 2026 [2026-10-21 13:15:53,433.433 INFO ] ================================================ [2026-10-21 13:15:54,009.009 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:15:54 [2026-10-21 13:15:54,607.607 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:15:54,865.865 INFO ] Initializing speech engine... [2026-10-21 13:15:54,874.874 INFO ] 2026-10-21 13:15:54 [2026-10-21 13:15:55,175.175 INFO ] 2026-10-21 13:15:55 [2026-10-21 13:15:55,212.212 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:15:55,434.434 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:15:55,442.442 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:15:55,649.649 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:15:55,687.687 INFO ] time= 21/10/2026 13:15:55 [2026-10-21 13:15:55,756.756 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:15:55,784.784 INFO ] Checking for existing commands in stream... [2026-10-21 13:15:55,918.918 INFO ] No existing commands found in stream [2026-10-21 13:16:00,943.943 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:16:00,945.945 INFO ] Waiting 0.64 seconds before fallback handling... [2026-10-21 13:16:02,126.126 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:16:02,130.130 INFO ] Checking for system updates... [2026-10-21 13:16:02,207.207 INFO ] 200 [2026-10-21 13:16:02,210.210 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:16:02,316.316 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:16:02,319.319 INFO ] No update needed [2026-10-21 13:16:02,322.322 INFO ] Checking for camera pi updates... [2026-10-21 13:16:02,364.364 INFO ] 200 [2026-10-21 13:16:02,367.367 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:16:02,425.425 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:16:12,438.438 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:16:12,478.478 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:16:12,489.489 INFO ] Script finished. Safe exiting... [2026-10-21 13:16:12,492.492 INFO ] === ACTIVE THREADS START === [2026-10-21 13:16:12,499.499 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:16:12,505.505 INFO ] === ACTIVE THREADS END === [2026-10-21 13:16:14,545.545 INFO ] ================================================ [2026-10-21 13:16:14,560.560 INFO ] Launching Daemon at Wed Oct 21 13:16:14 IST 2026 [2026-10-21 13:16:14,571.571 INFO ] ================================================ [2026-10-21 13:16:15,156.156 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:16:15 [2026-10-21 13:16:15,754.754 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:16:16,034.034 INFO ] Initializing speech engine... [2026-10-21 13:16:16,041.041 INFO ] 2026-10-21 13:16:16 [2026-10-21 13:16:16,306.306 INFO ] 2026-10-21 13:16:16 [2026-10-21 13:16:16,367.367 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:16:16,594.594 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:16:16,605.605 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:16:16,835.835 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:16:16,868.868 INFO ] time= 21/10/2026 13:16:16 [2026-10-21 13:16:16,886.886 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:16:16,897.897 INFO ] Checking for existing commands in stream... [2026-10-21 13:16:17,009.009 INFO ] No existing commands found in stream [2026-10-21 13:16:22,039.039 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:16:22,043.043 INFO ] Waiting 3.12 seconds before fallback handling... [2026-10-21 13:16:25,677.677 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:16:25,680.680 INFO ] Checking for system updates... [2026-10-21 13:16:25,718.718 INFO ] 200 [2026-10-21 13:16:25,721.721 INFO ] {"status": true, "state": "STATE_HEALTH_CHECK", "msg": "Status of machine"} [2026-10-21 13:16:25,723.723 INFO ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check [2026-10-21 13:16:25,726.726 INFO ] Checking for camera pi updates... [2026-10-21 13:16:25,763.763 INFO ] 200 [2026-10-21 13:16:25,766.766 INFO ] {"status": true, "state": "STATE_HEALTH_CHECK", "msg": "Status of machine"} [2026-10-21 13:16:25,770.770 INFO ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check [2026-10-21 13:16:25,773.773 INFO ] Script finished. Safe exiting... [2026-10-21 13:16:25,775.775 INFO ] === ACTIVE THREADS START === [2026-10-21 13:16:25,782.782 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:16:25,788.788 INFO ] === ACTIVE THREADS END === [2026-10-21 13:16:27,831.831 INFO ] ================================================ [2026-10-21 13:16:27,847.847 INFO ] Launching Daemon at Wed Oct 21 13:16:27 IST 2026 [2026-10-21 13:16:27,858.858 INFO ] ================================================ [2026-10-21 13:16:28,456.456 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:16:28 [2026-10-21 13:16:29,065.065 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:16:29,340.340 INFO ] Initializing speech engine... [2026-10-21 13:16:29,356.356 INFO ] 2026-10-21 13:16:29 [2026-10-21 13:16:29,645.645 INFO ] 2026-10-21 13:16:29 [2026-10-21 13:16:29,683.683 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:16:29,892.892 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:16:29,908.908 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:16:30,076.076 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:16:30,085.085 INFO ] time= 21/10/2026 13:16:30 [2026-10-21 13:16:30,118.118 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:16:30,161.161 INFO ] Checking for existing commands in stream... [2026-10-21 13:16:30,289.289 INFO ] No existing commands found in stream [2026-10-21 13:16:35,315.315 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:16:35,317.317 INFO ] Waiting 3.39 seconds before fallback handling... [2026-10-21 13:16:39,228.228 INFO ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}} [2026-10-21 13:16:39,231.231 INFO ] Checking for system updates... [2026-10-21 13:16:39,267.267 INFO ] 200 [2026-10-21 13:16:39,269.269 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:16:39,327.327 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:16:39,329.329 INFO ] No update needed [2026-10-21 13:16:39,331.331 INFO ] Checking for camera pi updates... [2026-10-21 13:16:39,368.368 INFO ] 200 [2026-10-21 13:16:39,371.371 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:16:39,411.411 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:16:49,426.426 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:16:49,461.461 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:16:49,471.471 INFO ] Script finished. Safe exiting... [2026-10-21 13:16:49,473.473 INFO ] === ACTIVE THREADS START === [2026-10-21 13:16:49,478.478 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:16:49,483.483 INFO ] === ACTIVE THREADS END === [2026-10-21 13:16:51,523.523 INFO ] ================================================ [2026-10-21 13:16:51,538.538 INFO ] Launching Daemon at Wed Oct 21 13:16:51 IST 2026 [2026-10-21 13:16:51,549.549 INFO ] ================================================ [2026-10-21 13:16:52,143.143 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:16:52 [2026-10-21 13:16:52,753.753 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:16:53,010.010 INFO ] Initializing speech engine... [2026-10-21 13:16:53,018.018 INFO ] 2026-10-21 13:16:53 [2026-10-21 13:16:53,316.316 INFO ] 2026-10-21 13:16:53 [2026-10-21 13:16:53,342.342 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:16:53,555.555 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:16:53,571.571 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:16:58,597.597 INFO ] MachineMessageSender.__init__: Redis error: Timeout connecting to server [2026-10-21 13:16:58,634.634 INFO ] Exiting as MachineMessageSender redis not connected!!! [2026-10-21 13:16:58,637.637 INFO ] === ACTIVE THREADS START === [2026-10-21 13:16:58,642.642 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:16:58,648.648 INFO ] === ACTIVE THREADS END === [2026-10-21 13:17:00,688.688 INFO ] ================================================ [2026-10-21 13:17:00,703.703 INFO ] Launching Daemon at Wed Oct 21 13:17:00 IST 2026 [2026-10-21 13:17:00,714.714 INFO ] ================================================ [2026-10-21 13:17:01,301.301 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:17:01 [2026-10-21 13:17:01,990.990 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:17:02,475.475 INFO ] Initializing speech engine... [2026-10-21 13:17:02,483.483 INFO ] 2026-10-21 13:17:02 [2026-10-21 13:17:02,864.864 INFO ] 2026-10-21 13:17:02 [2026-10-21 13:17:02,929.929 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:17:03,141.141 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:17:03,149.149 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:17:03,356.356 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:17:03,398.398 INFO ] time= 21/10/2026 13:17:03 [2026-10-21 13:17:03,423.423 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:17:03,428.428 INFO ] Checking for existing commands in stream... [2026-10-21 13:17:03,584.584 INFO ] No existing commands found in stream [2026-10-21 13:17:08,617.617 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:17:08,619.619 INFO ] Waiting 3.21 seconds before fallback handling... [2026-10-21 13:17:12,345.345 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:17:12,348.348 INFO ] Checking for system updates... [2026-10-21 13:17:12,384.384 INFO ] 200 [2026-10-21 13:17:12,387.387 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:17:12,440.440 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:17:12,443.443 INFO ] No update needed [2026-10-21 13:17:12,445.445 INFO ] Checking for camera pi updates... [2026-10-21 13:17:12,479.479 INFO ] 200 [2026-10-21 13:17:12,482.482 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:17:12,522.522 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:17:22,537.537 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:17:22,572.572 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:17:22,582.582 INFO ] Script finished. Safe exiting... [2026-10-21 13:17:22,585.585 INFO ] === ACTIVE THREADS START === [2026-10-21 13:17:22,590.590 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:17:22,595.595 INFO ] === ACTIVE THREADS END === [2026-10-21 13:17:24,634.634 INFO ] ================================================ [2026-10-21 13:17:24,650.650 INFO ] Launching Daemon at Wed Oct 21 13:17:24 IST 2026 [2026-10-21 13:17:24,660.660 INFO ] ================================================ [2026-10-21 13:17:25,252.252 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:17:25 [2026-10-21 13:17:25,845.845 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:17:26,098.098 INFO ] Initializing speech engine... [2026-10-21 13:17:26,106.106 INFO ] 2026-10-21 13:17:26 [2026-10-21 13:17:26,409.409 INFO ] 2026-10-21 13:17:26 [2026-10-21 13:17:26,434.434 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:17:26,622.622 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:17:26,634.634 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:17:26,779.779 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:17:26,786.786 INFO ] time= 21/10/2026 13:17:26 [2026-10-21 13:17:26,836.836 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:17:26,855.855 INFO ] Checking for existing commands in stream... [2026-10-21 13:17:26,981.981 INFO ] No existing commands found in stream [2026-10-21 13:17:31,992.992 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:17:31,995.995 INFO ] Waiting 2.96 seconds before fallback handling... [2026-10-21 13:17:35,452.452 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:17:35,454.454 INFO ] Checking for system updates... [2026-10-21 13:17:35,491.491 INFO ] 200 [2026-10-21 13:17:35,494.494 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:17:35,553.553 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:17:35,556.556 INFO ] No update needed [2026-10-21 13:17:35,558.558 INFO ] Checking for camera pi updates... [2026-10-21 13:17:35,596.596 INFO ] 200 [2026-10-21 13:17:35,599.599 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:17:35,640.640 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:17:45,655.655 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:17:45,690.690 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:17:45,701.701 INFO ] Script finished. Safe exiting... [2026-10-21 13:17:45,703.703 INFO ] === ACTIVE THREADS START === [2026-10-21 13:17:45,708.708 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:17:45,714.714 INFO ] === ACTIVE THREADS END === [2026-10-21 13:17:47,753.753 INFO ] ================================================ [2026-10-21 13:17:47,769.769 INFO ] Launching Daemon at Wed Oct 21 13:17:47 IST 2026 [2026-10-21 13:17:47,780.780 INFO ] ================================================ [2026-10-21 13:17:48,447.447 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:17:48 [2026-10-21 13:17:49,129.129 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:17:49,442.442 INFO ] Initializing speech engine... [2026-10-21 13:17:49,450.450 INFO ] 2026-10-21 13:17:49 [2026-10-21 13:17:49,731.731 INFO ] 2026-10-21 13:17:49 [2026-10-21 13:17:49,786.786 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:17:50,018.018 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:17:50,024.024 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:17:50,278.278 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:17:50,291.291 INFO ] time= 21/10/2026 13:17:50 [2026-10-21 13:17:50,312.312 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:17:50,339.339 INFO ] Checking for existing commands in stream... [2026-10-21 13:17:50,460.460 INFO ] No existing commands found in stream [2026-10-21 13:17:55,495.495 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:17:55,499.499 INFO ] Waiting 2.67 seconds before fallback handling... [2026-10-21 13:17:58,721.721 INFO ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}} [2026-10-21 13:17:58,724.724 INFO ] Checking for system updates... [2026-10-21 13:17:58,765.765 INFO ] 200 [2026-10-21 13:17:58,768.768 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:17:58,824.824 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:17:58,827.827 INFO ] No update needed [2026-10-21 13:17:58,830.830 INFO ] Checking for camera pi updates... [2026-10-21 13:17:58,874.874 INFO ] 200 [2026-10-21 13:17:58,877.877 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:17:58,925.925 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:18:08,937.937 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:18:08,972.972 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:18:08,983.983 INFO ] Script finished. Safe exiting... [2026-10-21 13:18:08,985.985 INFO ] === ACTIVE THREADS START === [2026-10-21 13:18:08,990.990 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:18:08,995.995 INFO ] === ACTIVE THREADS END === [2026-10-21 13:18:11,035.035 INFO ] ================================================ [2026-10-21 13:18:11,050.050 INFO ] Launching Daemon at Wed Oct 21 13:18:11 IST 2026 [2026-10-21 13:18:11,061.061 INFO ] ================================================ [2026-10-21 13:18:11,647.647 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:18:11 [2026-10-21 13:18:12,251.251 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:18:12,532.532 INFO ] Initializing speech engine... [2026-10-21 13:18:12,539.539 INFO ] 2026-10-21 13:18:12 [2026-10-21 13:18:12,801.801 INFO ] 2026-10-21 13:18:12 [2026-10-21 13:18:12,854.854 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:18:13,078.078 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:18:13,087.087 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:18:13,299.299 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:18:13,347.347 INFO ] time= 21/10/2026 13:18:13 [2026-10-21 13:18:13,364.364 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:18:13,374.374 INFO ] Checking for existing commands in stream... [2026-10-21 13:18:13,503.503 INFO ] No existing commands found in stream [2026-10-21 13:18:18,515.515 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:18:18,518.518 INFO ] Waiting 3.08 seconds before fallback handling... [2026-10-21 13:18:27,166.166 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:18:27,169.169 INFO ] Checking for system updates... [2026-10-21 13:18:27,223.223 INFO ] 200 [2026-10-21 13:18:27,227.227 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:18:27,288.288 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:18:27,291.291 INFO ] No update needed [2026-10-21 13:18:27,294.294 INFO ] Checking for camera pi updates... [2026-10-21 13:18:27,334.334 INFO ] 200 [2026-10-21 13:18:27,336.336 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:18:27,380.380 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:18:37,397.397 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:18:37,437.437 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:18:37,447.447 INFO ] Script finished. Safe exiting... [2026-10-21 13:18:37,449.449 INFO ] === ACTIVE THREADS START === [2026-10-21 13:18:37,455.455 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:18:37,459.459 INFO ] === ACTIVE THREADS END === [2026-10-21 13:18:39,499.499 INFO ] ================================================ [2026-10-21 13:18:39,515.515 INFO ] Launching Daemon at Wed Oct 21 13:18:39 IST 2026 [2026-10-21 13:18:39,526.526 INFO ] ================================================ [2026-10-21 13:18:40,102.102 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:18:40 [2026-10-21 13:18:40,693.693 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:18:40,946.946 INFO ] Initializing speech engine... [2026-10-21 13:18:40,969.969 INFO ] 2026-10-21 13:18:40 [2026-10-21 13:18:41,223.223 INFO ] 2026-10-21 13:18:41 [2026-10-21 13:18:41,259.259 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:18:41,516.516 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:18:41,525.525 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:18:41,703.703 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:18:41,752.752 INFO ] time= 21/10/2026 13:18:41 [2026-10-21 13:18:41,791.791 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:18:41,797.797 INFO ] Checking for existing commands in stream... [2026-10-21 13:18:41,946.946 INFO ] No existing commands found in stream [2026-10-21 13:18:46,964.964 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:18:46,967.967 INFO ] Waiting 1.69 seconds before fallback handling... [2026-10-21 13:18:49,180.180 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:18:49,183.183 INFO ] Checking for system updates... [2026-10-21 13:18:49,219.219 INFO ] 200 [2026-10-21 13:18:49,221.221 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:18:49,274.274 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:18:49,277.277 INFO ] No update needed [2026-10-21 13:18:49,279.279 INFO ] Checking for camera pi updates... [2026-10-21 13:18:49,313.313 INFO ] 200 [2026-10-21 13:18:49,315.315 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:18:49,360.360 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:18:59,374.374 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:18:59,410.410 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:18:59,419.419 INFO ] Script finished. Safe exiting... [2026-10-21 13:18:59,422.422 INFO ] === ACTIVE THREADS START === [2026-10-21 13:18:59,427.427 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:18:59,432.432 INFO ] === ACTIVE THREADS END === [2026-10-21 13:19:01,472.472 INFO ] ================================================ [2026-10-21 13:19:01,487.487 INFO ] Launching Daemon at Wed Oct 21 13:19:01 IST 2026 [2026-10-21 13:19:01,499.499 INFO ] ================================================ [2026-10-21 13:19:02,201.201 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:19:02 [2026-10-21 13:19:02,884.884 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:19:03,180.180 INFO ] Initializing speech engine... [2026-10-21 13:19:03,195.195 INFO ] 2026-10-21 13:19:03 [2026-10-21 13:19:03,522.522 INFO ] 2026-10-21 13:19:03 [2026-10-21 13:19:03,572.572 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:19:03,787.787 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:19:03,799.799 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:19:03,945.945 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:19:03,952.952 INFO ] time= 21/10/2026 13:19:03 [2026-10-21 13:19:03,999.999 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:19:04,028.028 INFO ] Checking for existing commands in stream... [2026-10-21 13:19:04,164.164 INFO ] No existing commands found in stream [2026-10-21 13:19:09,175.175 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:19:09,177.177 INFO ] Waiting 2.25 seconds before fallback handling... [2026-10-21 13:19:11,921.921 INFO ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}} [2026-10-21 13:19:11,924.924 INFO ] Checking for system updates... [2026-10-21 13:19:11,959.959 INFO ] 200 [2026-10-21 13:19:11,962.962 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:19:12,016.016 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:19:12,019.019 INFO ] No update needed [2026-10-21 13:19:12,021.021 INFO ] Checking for camera pi updates... [2026-10-21 13:19:12,056.056 INFO ] 200 [2026-10-21 13:19:12,059.059 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:19:12,105.105 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:19:22,122.122 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:19:22,160.160 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:19:22,171.171 INFO ] Script finished. Safe exiting... [2026-10-21 13:19:22,174.174 INFO ] === ACTIVE THREADS START === [2026-10-21 13:19:22,179.179 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:19:22,185.185 INFO ] === ACTIVE THREADS END === [2026-10-21 13:19:24,227.227 INFO ] ================================================ [2026-10-21 13:19:24,242.242 INFO ] Launching Daemon at Wed Oct 21 13:19:24 IST 2026 [2026-10-21 13:19:24,253.253 INFO ] ================================================ [2026-10-21 13:19:24,843.843 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:19:24 [2026-10-21 13:19:25,450.450 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:19:25,733.733 INFO ] Initializing speech engine... [2026-10-21 13:19:25,740.740 INFO ] 2026-10-21 13:19:25 [2026-10-21 13:19:26,007.007 INFO ] 2026-10-21 13:19:26 [2026-10-21 13:19:26,063.063 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:19:26,304.304 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:19:26,314.314 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:19:26,464.464 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:19:26,499.499 INFO ] time= 21/10/2026 13:19:26 [2026-10-21 13:19:26,559.559 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:19:26,610.610 INFO ] Checking for existing commands in stream... [2026-10-21 13:19:26,709.709 INFO ] No existing commands found in stream [2026-10-21 13:19:31,741.741 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:19:31,744.744 INFO ] Waiting 3.63 seconds before fallback handling... [2026-10-21 13:19:35,898.898 INFO ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}} [2026-10-21 13:19:35,901.901 INFO ] Checking for system updates... [2026-10-21 13:19:35,939.939 INFO ] 200 [2026-10-21 13:19:35,942.942 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:19:35,996.996 INFO ] Update check result: {'message': 'No upgrade available', 'status': 0} [2026-10-21 13:19:35,999.999 INFO ] No update needed [2026-10-21 13:19:36,002.002 INFO ] Checking for camera pi updates... [2026-10-21 13:19:36,038.038 INFO ] 200 [2026-10-21 13:19:36,041.041 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:19:36,082.082 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:19:46,097.097 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:19:46,133.133 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:19:46,143.143 INFO ] Script finished. Safe exiting... [2026-10-21 13:19:46,145.145 INFO ] === ACTIVE THREADS START === [2026-10-21 13:19:46,151.151 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:19:46,156.156 INFO ] === ACTIVE THREADS END === [2026-10-21 13:19:48,195.195 INFO ] ================================================ [2026-10-21 13:19:48,211.211 INFO ] Launching Daemon at Wed Oct 21 13:19:48 IST 2026 [2026-10-21 13:19:48,221.221 INFO ] ================================================ [2026-10-21 13:19:48,821.821 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:19:48 [2026-10-21 13:19:49,414.414 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:19:49,665.665 INFO ] Initializing speech engine... [2026-10-21 13:19:49,680.680 INFO ] 2026-10-21 13:19:49 [2026-10-21 13:19:49,976.976 INFO ] 2026-10-21 13:19:49 [2026-10-21 13:19:50,013.013 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:19:50,208.208 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:19:50,223.223 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:19:50,377.377 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:19:50,386.386 INFO ] time= 21/10/2026 13:19:50 [2026-10-21 13:19:50,392.392 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:19:50,443.443 INFO ] Checking for existing commands in stream... [2026-10-21 13:19:50,582.582 INFO ] No existing commands found in stream [2026-10-21 13:19:55,598.598 INFO ] Redis XREAD timeout, continuing to listen... [2026-10-21 13:19:55,601.601 INFO ] Waiting 0.64 seconds before fallback handling... [2026-10-21 13:19:56,777.777 INFO ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}} [2026-10-21 13:19:56,780.780 INFO ] Checking for system updates... [2026-10-21 13:19:56,817.817 INFO ] 200 [2026-10-21 13:19:56,819.819 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:19:56,872.872 INFO ] Update check result: {'status': 0, 'message': 'No upgrade available'} [2026-10-21 13:19:56,875.875 INFO ] No update needed [2026-10-21 13:19:56,877.877 INFO ] Checking for camera pi updates... [2026-10-21 13:19:56,912.912 INFO ] 200 [2026-10-21 13:19:56,915.915 INFO ] {"status": true, "state": "STATE_IDLE", "msg": "Status of machine"} [2026-10-21 13:19:56,956.956 INFO ] Camera IP: TMCAM04202201.local [2026-10-21 13:20:06,970.970 INFO ] Error during camera update process: HTTPConnectionPool(host='tmcam04202201.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError(': Failed to establish a new connection: [Errno -2] Name or service not known',)) [2026-10-21 13:20:07,006.006 INFO ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment [2026-10-21 13:20:07,016.016 INFO ] Script finished. Safe exiting... [2026-10-21 13:20:07,019.019 INFO ] === ACTIVE THREADS START === [2026-10-21 13:20:07,024.024 INFO ] Thread: MainThread, daemon=False, alive=True [2026-10-21 13:20:07,029.029 INFO ] === ACTIVE THREADS END === [2026-10-21 13:20:09,069.069 INFO ] ================================================ [2026-10-21 13:20:09,084.084 INFO ] Launching Daemon at Wed Oct 21 13:20:09 IST 2026 [2026-10-21 13:20:09,095.095 INFO ] ================================================ [2026-10-21 13:20:09,668.668 INFO ] Heartbeat written: HEARTBEAT_TS=2026-10-21 13:20:09 [2026-10-21 13:20:10,293.293 INFO ] Using urllib3 for HTTP requests [2026-10-21 13:20:10,578.578 INFO ] Initializing speech engine... [2026-10-21 13:20:10,595.595 INFO ] 2026-10-21 13:20:10 [2026-10-21 13:20:10,886.886 INFO ] 2026-10-21 13:20:10 [2026-10-21 13:20:10,923.923 INFO ] VendingMachinePublisher.__init__: Connecting to redis... [2026-10-21 13:20:11,222.222 INFO ] VendingMachinePublisher.__init__: Connected to redis... [2026-10-21 13:20:11,245.245 INFO ] MachineMessageSender.__init__: Connecting to redis... [2026-10-21 13:20:11,429.429 INFO ] MachineMessageSender.__init__: Connected to redis... [2026-10-21 13:20:11,510.510 INFO ] time= 21/10/2026 13:20:11 [2026-10-21 13:20:11,554.554 INFO ] Listening for commands on Redis Stream: machine:TM04202201 [2026-10-21 13:20:11,560.560 INFO ] Checking for existing commands in stream... [2026-10-21 13:20:11,692.692 INFO ] No existing commands found in stream